Skip to content
Menu
Knihy-blog
Knihy-blog
11月 27, 2021

SCCMを使用してアプリケーションバージョンよりも大きい/小さいを照会

X

プライバシー&クッキー

このサイトはクッキーを使用しています。 継続することにより、あなたはそれらの使用に同意します。 Cookieの制御方法など、詳細についてはこちらをご覧ください。

わかった!

広告
Successfully Tested On: Microsoft System Center Configuration Manager versions 1809 - 2002

IT技術者が直面する可能性のある課題の1つは、SCCM内のアプリケーションバージョンを照会しようとすることです。 特定のバージョンのクエリを作成すると、等号演算子(=)を使用してうまく機能しますが、特定のバージョンより大きい(>)または小さい(<)バージョンを検索するこ

これは、バージョン番号がSCCMデータベースに文字列として格納されているためです。 WQL(sqlのサブセット)はSCCMからデータを照会するために使用されるため、文字列値を比較するときにWQLの制限によって制限されます。 WQLに関するMicrosoftからの詳細情報はここで見つけることができます: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_wql

例としてGoogle Chromeを使用してみましょう。 バージョン79.0.3945.117未満のすべての安定したバージョンのGoogle Chromeを照会するとします。 私の解決策は少し面倒ですが、確実に機能します。

その外観にもかかわらず、次の部分的なWQLクエリステートメントは機能しません:

WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.DisplayName LIKE "Google Chrome%" AND SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version < "79.0.3945.117"

より小さい演算子(<)は、Chromeバージョン79.0.3945.88が79.0.3945.117より大きいと評価しますが、これは明らかに間違っています。 それでどうする?

LIKE演算子

LIKE演算子は、必要な結果を得るために活用するものです。 LIKEでは、角かっこ()を使用して範囲または文字セットを指定し、ワイルドカードとしてパーセント記号(%)を使用してゼロ以上の文字列を指定できます。

まず、すべてのバージョン1–9(1桁のバージョン)を照会する必要があります。 これは、部分的なSQLクエリステートメントを使用して実行されます:

WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE ".%"

percent signワイルドカード(%)は、すべてのサブバージョンを取得するために、ピリオドの後に使用されます。

次に、バージョン10–78をキャプチャする必要があります。 この文は、そのほぼすべてを取得します:

WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE ".%"

しかし、バージョンを補償するためにもこれが必要になります19, 29, 39, 49, 59, と69:

WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE "9.%"

前と同じように、ワイルドカード(%)を使用して、すべてのサブバージョンを取得します。 各セットは単一の文字にのみ対応するため、角括弧の2つのセットも使用する必要があることに注意してください。

次に、いくつかのバージョンの洞察は、いくつかの作業を減らすのに役立ちます。 GoogleのChromeの安定版リリース履歴によると、ターゲット79.0.3945.117より前にリリースされた79の安定版サブバージョンは二つしかありません。 これら2つのバージョンは79.0.3945.79と79.0.3945.88です。

等号演算子(=)を使用して、これらのそれぞれを明示的にアドレス指定します:

WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version = "79.0.3945.79"
WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version = "79.0.3945.88"

最後に、クエリは少し書式設定で完了します:
sccmversionquery

SELECT * FROM SMS_R_System INNER JOIN SMS_G_System_ADD_REMOVE_PROGRAMS_64 ON SMS_G_System_ADD_REMOVE_PROGRAMS_64.ResourceId = SMS_R_System.ResourceId WHERE SMS_G_System_ADD_REMOVE_PROGRAMS_64.DisplayName LIKE "Google Chrome%" AND (SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE ".%" OR SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE ".%" OR SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version LIKE "9.%" OR SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version = "79.0.3945.79" OR SMS_G_System_ADD_REMOVE_PROGRAMS_64.Version = "79.0.3945.88")

79.0.3945.117未満のすべての安定したChromeバージョンが見つかります。 ただし、これは64ビットバージョンのChromeのみを検索するため、Sms_G_System_Add_Remove_Programsテーブルを使用して、32ビットの同じステートメントを複製することができます。

この同じ手法を使用して、特定のバージョンよりも大きいバージョンを照会することもでき、アプリケーションバージョンをより確実に照会するのに役立

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

最近の投稿

  • シドニー-ライス純資産2018:このNFLのサッカー選手の価値は何ですか?
  • SQL Server QUOTENAME関数
  • 心血管健康研究(CHS)
  • 最高のイチゴドレッシング
  • Talks
  • スタンフォードMSxレビュー:エグゼクティブMBAの代替はそれだけの価値がありますか?
  • PMC
  • 49熱い写真のStephanie Szostakこれはあなたが汚い考えを考えるようになります
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어

アーカイブ

  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
©2022 Knihy-blog | Powered by WordPress and Superb Themes!