2015-10-16 77 views
0

我需要爲我的工作跟蹤舊版軟件。我需要報告已安裝的實例和最新的實例。 Adobe Flash Player和Adobe Air一起被追蹤。目前我們檢查報告並手動添加每個版本的編號。我也拉動舊版本嘗試手動遠程修補。SCCM 2007通過版本篩選安裝的軟件查詢

這裏是我的查詢語句列出所有實例

select SMS_R_System.Name, SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName, SMS_G_System_ADD_REMOVE_PROGRAMS.Version from SMS_R_System 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 "%Adobe AIR%" and SMS_G_System_ADD_REMOVE_PROGRAMS.InstallDate is not null or SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "%Adobe Flash Player%" order by SMS_R_System.Name 

這不是一個問題,但是當我嘗試拉太舊版本是不容易。可接受的版本包括Adobe Air 19.0.0.190,Adobe Flash Player 18.0.0.241和Adobe Flash Player 19.0.0.190。

select SMS_R_System.Name, SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName, SMS_G_System_ADD_REMOVE_PROGRAMS.Version from SMS_R_System 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 "%Adobe AIR%" and SMS_G_System_ADD_REMOVE_PROGRAMS.InstallDate is not null and (SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "[0-9].%" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "1[0-8].%" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.[0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.[0-9][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.1[0-8][0-9]") or SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "%adobe flash player%" and (SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "[0-9].%" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "1[0-7].%" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "18.0.0.[0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "18.0.0.[0-9][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "18.0.0.1[0-9][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "18.0.0.2[0-3][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "18.0.0.240" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.[0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.[0-9][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.1[0-7][0-9]" or SMS_G_System_ADD_REMOVE_PROGRAMS.Version like "19.0.0.18[0-4]") order by SMS_R_System.Name 

這有效,但是當版本改變時,幾乎不可能更新而不會搞亂。我拉兩個列表,並比較他們4或5次,以找到我失蹤的東西。

反正有SCCM/MS SQL來比較版本號嗎?

WHERE Version < 19.0.0.190 

我嘗試了一個基於此查詢,但它似乎比較每個數字或類似的效果。例如(7.2> 7.11或7.0.1.0> 16.0.0.111)我還沒有找到SCCM特定解決方案。如果MS不支持更好的方法,我會感到震驚。

這只是一個例子。有很多程序我們使用#。#版本跟蹤一些,有些使用#。#。#。#版本,並且該版本或多或少取決於版本。靈活的解決方案將會非常棒。

對不起,格式非常糟糕。自從3年前的兩週課程是MS訪問以來,我自學並沒有觸及SQL。

回答

0

這僅僅是一目瞭然的回覆,但你可以做一個聲明......

(和版本像18### 版> 18.0.0.184) 或 (如版本19###### 和版本> 19.0.0.190)

相關問題