SQL Clone
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in

WSUS 3.0 - Query to Return Systems That Haven't Checked in Within the Week

I've been playing with WSUS lately and I've been less than satisfied with the reporting. Since the information I need to get at exists in a SQL Server database, I've been writing my own queries to get it out. Here's a basic query to get out what systems in a particular group haven't checked in within the last week. There are 3 basic tables which have to be put together: tbComputerTarget (contains the information on the computers), tbTargetGroup (contains the information on the groups), and tbTargetInTargetGroup (join table between the two). I have found cases where a system will have checked in to WSUS so that we see it's computer name, IP address, etc., but it doesn't actually report a status time (nor any status information), hence an OR for LastReportedStatusTime is NULL to include those systems, too.


DECLARE @GroupName nvarchar(512)
SET @GroupName = '<Group Name>'

  , IPAddress
  , LastReportedStatusTime
FROM tbComputerTarget CT
JOIN tbTargetInTargetGroup TTG
ON CT.TargetID = TTG.TargetID
JOIN tbTargetGroup TG
ON TTG.TargetGroupID = TG.TargetGroupID
WHERE TG.Name = @GroupName
AND (DATEDIFF(dd, LastReportedStatusTime, GETDATE()) > 6
OR LastReportedStatusTime IS NULL)


K. Brian Kelley - Databases, Infrastructure, and Security

IT Security, MySQL, Perl, SQL Server, and Windows technologies.


No comments.

Leave a Comment

Please register or log in to leave a comment.