我正在尝试在 SCCM 2012 中创建一个设备集合,其中仅包含属于某个用户 AD 安全组的用户使用的设备。我尝试通过首先查询组中的所有用户来实现这一点,效果很好:
select SMS_R_User.UserGroupName,
SMS_R_User.UserName
from SMS_R_User where SMS_R_User.UserGroupName = "Domain\\AD_Group"
然后,我创建了一个具有查询规则的设备集合,其中的条件是,如果设备的最后登录用户是我进行的第一个组查询的子选定值的一部分,那么这些设备将被添加到集合中。查询规则:
select * from SMS_R_System
where SMS_R_System.LastLogonUserName
in (select SMS_R_User.UserGroupName, SMS_R_User.UserName
from SMS_R_User where SMS_R_User.UserGroupName = "Domain\\AD_Group")
但是当我尝试保存查询规则时,配置管理器提示查询无效。我不太清楚我做错了什么。也许有更好的方法?
答案1
尝试一下这个:
SELECT * FROM SMS_R_SYSTEM
INNER JOIN SMS_R_uSER
ON SMS_r_system.LastLogonUserName = SMS_R_uSER.FullUserName
WHERE SMS_R_uSER.SecurityGroupName = 'Domain\\AD_Group';
答案2
试试这个(对我有用):
select * from SMS_R_System
where SMS_R_System.LastLogonUserName
in (select SMS_R_User.UserName
from SMS_R_User where SMS_R_User.UserGroupName = "Domain\\AD_Group")