如何用Nexthink NQL统计同时拥有MAC和Windows设备的用户总数?
统计同时拥有Mac和Windows设备的Nexthink NQL查询
你可以直接通过关联user和device表实现这个统计,不需要借助events表。下面提供两种可行的NQL写法:
方法一:子查询取交集
通过两个子查询分别筛选出关联Mac设备、Windows设备的用户ID,再取交集统计总数:
SELECT count(user.id) AS total_users FROM user WHERE user.id IN ( SELECT user.id FROM device WHERE device.os.family = 'Mac' ) AND user.id IN ( SELECT user.id FROM device WHERE device.os.family = 'Windows' )
方法二:分组筛选
关联用户与设备表后,按用户分组统计其关联的操作系统类型数量,筛选出拥有两种系统的用户再统计总数:
SELECT user.id, count(DISTINCT device.os.family) AS os_count FROM user JOIN device ON user.id = device.user.id WHERE device.os.family IN ('Mac', 'Windows') GROUP BY user.id HAVING os_count = 2 | SELECT count(user.id) AS total_users
关键说明
device表通过device.user.id字段与user表的user.id直接关联,这是核心关联逻辑,无需额外依赖其他表- 两种方法都能精准统计目标用户总数,可根据个人习惯选择使用
内容的提问来源于stack exchange,提问作者Eddy Levi
相关产品推荐
相关产品推荐

