我需要编写一个WMI查询,我需要检查一些值是否等于列表中的一个值,但我没有发现WQL支持像SQL这样的IN运算符。
例如: SELECT * FROM Device WHERE __CLASS IN(“Device1”,“Device20”)。
如何编写此查询?
感谢。
答案 0 :(得分:5)
WMI使用WQL
语言,该语言只是SQL语言的一个子集,不包含IN
运算符。
所以你可以使用OR运算符重写tor句子,就像这样
SELECT * FROM Win32_LogicalDisk Where (DriveType=3) or (DriveType=5)
或使用你的WQL句子。
SELECT * FROM Device WHERE (__CLASS="Device1") OR (__CLASS="Device20")