windows - WQL 中的 IN 运算符

标签 windows wmi wmi-query wql

我需要编写一个 WMI 查询,我需要在其中检查某个值是否等于列表中的值之一,但我没有发现 WQL 像 SQL 一样支持 IN 运算符。

例如:

SELECT * FROM Device WHERE __CLASS IN ("Device1", "Device20").

这个查询的写法有哪些?

谢谢。

最佳答案

WMI 使用 WQL语言,它只是 SQL 语言的一个子集,不包括 IN 运算符。

所以你可以使用 OR 运算符重写句子,就像这样

SELECT * FROM Win32_LogicalDisk  Where (DriveType=3) or (DriveType=5)

或使用您的 WQL 语句。

SELECT * FROM Device WHERE (__CLASS="Device1") OR (__CLASS="Device20")

关于windows - WQL 中的 IN 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19530825/

相关文章:

windows - .gitconfig 安装在 Windows 10 的错误驱动器上

windows - C/C++中的跨平台unicode : Which encoding to use?

c# - 您能否拥有一个从仅具有用户级权限的客户端应用程序链接的具有管理员权限的 DLL?

asynchronous - Inno Setup 中的异步 WMI 查询

c# - 获取蓝牙 COM 端口

c# - 通过代码在 Windows 10 上启用平板电脑模式?

c++ - VS 2010 构建错误

c# - 使用 WMI 在远程计算机中执行进程

c# - 如何从 C# 中删除 IIS 对象?

sql - WQL 不支持 TOP - 需要解决方法