2015-11-04 53 views
0

我必須在sccm中進行查詢以獲取安裝了特定軟件的所有客戶端。但我不知道如何完成這項工作。 我試過這個,但它不夠準確。WQL查詢軟件清單

select SMS_G_System_SYSTEM.Name from SMS_R_System inner join SMS_G_System_SYSTEM on SMS_G_System_SYSTEM.ResourceID = SMS_R_System.ResourceId inner join SMS_G_System_SoftwareFile on SMS_G_System_SoftwareFile.ResourceID = SMS_R_System.ResourceId where SMS_G_System_SoftwareFile.FileName = "program.exe" and SMS_G_System_SoftwareFile.FileVersion > "version" and SMS_R_System.Client = 1 

我想檢查控制面板中的程序。我試過這個查詢:

select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_COMPUTER_SYSTEM.Name not in (select distinct SMS_G_System_COMPUTER_SYSTEM.Name from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceID = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "%program%") 

但是這一個沒有給我結果。

感謝您的幫助!

回答

0

SCCM內置的報表功能非常簡單,可以查看安裝了特定應用程序的所有系統。這不適合你嗎?

如果你需要它的查詢,這裏是一個基於谷歌瀏覽器

select SCCM.Name0 
,CAT.[ProductName0] 
,CAT.[ProductVersion0] 
,CAT.[Publisher0] 
,CAT.[NormalizedName]</code> 


FROM v_GS_INSTALLED_SOFTWARE_CATEGORIZED as CAT 
join v_R_System as SCCM on CAT.ResourceID = SCCM.ResourceID 
where CAT.[ProductName0] like '%Google Chrome%' 

一個例子這將返回系統的名稱,然後一堆有關應用程序的信息的。

+0

感謝您的答案,但我得到一個語法錯誤,如果我想保存它。 –