Hi Everyone,
I am running into an issue where a query I am putting together to pull lastboot data from Server Nodes and convert the date into an "uptime" the list of servers being returned does not match our master server list (off by about 100 servers).
Our master server list is using the following which produces the correct amount of servers expected:

The below query I am trying to match this by pulling from NodesData_Category = 2, but the list I am getting back is a bit short:
SELECT
Caption
,Ip_Address
,MachineType
,LastBoot
,Owner
,OwnerName
,NodesData_Category
,DateDiff(hour,Nodes.LastBoot,GetDate()) AS HoursUp
,CONVERT(VARCHAR(40), DATEDIFF(minute, Nodes.LastBoot, GETDATE())/(24*60))
+ ' days, '
+ CONVERT(VARCHAR(40), DATEDIFF(minute, Nodes.LastBoot, GETDATE())%(24*60)/60)
+ ' hours, and '
+ CONVERT(VARCHAR(40), DATEDIFF(minute, Nodes.LastBoot, GETDATE())%60)
+ ' minutes.' AS 'Time Up'
FROM [Nodes]
where NodesData_Category = 2
ORDER BY Caption ASC
Is there an easier/better way to query from the same location as the dynamic query pictured using SQL? Any advice would be greatly appreciated.