SCCM设备未显示在设备集合中问题排查求助
我是SCCM新手,正基于计算机名称创建设备集合。通过条件选项卡自动生成的成员规则查询语句如下:
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceId = SMS_R_System.ResourceId where SMS_G_System_COMPUTER_SYSTEM.Name like "Trolley1-%"该语句本应匹配所有名称以Trolley1-开头的设备,目前仅找到7个(如TROLLEY1-LPT16、TROLLEY1-LPT3等)。但在设备列表中输入Trolley1-筛选可看到12台设备,其中3台因未开机无客户端,而TROLLEY1-LPT9显示在线、已安装客户端、站点代码正确且状态活跃,却未出现在集合中。手动执行Update Memebership并刷新后仍未显示,请问问题出在哪里?
作为SCCM老玩家,我来帮你一步步排查这个问题——这种“明明符合条件却没进集合”的情况我也碰到过好几次,咱们从几个常见的点入手:
1. WQL查询的大小写敏感问题
你的查询里用的是SMS_G_System_COMPUTER_SYSTEM.Name like "Trolley1-%",但SCCM的WQL查询默认是大小写敏感的!你提到的TROLLEY1-LPT9是全大写开头,而匹配字符串是首字母大写的Trolley1-,这直接导致它无法被匹配到。
解决方法:
把查询改成大小写不敏感的形式,推荐用upper()函数统一转换字符串,不管设备名是大写还是小写都能匹配:
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceId = SMS_R_System.ResourceId where upper(SMS_G_System_COMPUTER_SYSTEM.Name) like upper("Trolley1-%")
2. 硬件库存未同步导致的记录缺失
SMS_G_System_COMPUTER_SYSTEM这个视图的数据来自设备的硬件库存上报,如果TROLLEY1-LPT9的最新硬件库存还没同步到SCCM服务器,数据库里的这条记录可能是旧的,甚至缺失,内连接就会把它排除在外。
解决方法:
- 在TROLLEY1-LPT9上手动触发硬件库存:打开设备上的Configuration Manager控制台(或通过SCCM控制台远程操作),右键设备选择客户端通知>启动硬件库存周期。
- 等待10-15分钟让库存数据同步,再手动更新集合成员并刷新查看。
3. 内连接带来的查询限制
你的查询用了inner join SMS_G_System_COMPUTER_SYSTEM,内连接的逻辑是只有两个表都有匹配记录的设备才会被返回。如果某台设备的硬件库存记录缺失,哪怕它在线有客户端,也会被过滤掉。
其实你完全可以简化查询——SMS_R_System表本身就包含设备名称,不需要关联硬件库存表,这样能避免连接带来的问题:
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where upper(SMS_R_System.Name) like upper("Trolley1-%")
4. SCCM控制台缓存问题
有时候即使更新了集合成员,控制台显示的还是旧缓存数据。可以试试:
- 完全关闭SCCM控制台,重新打开后再查看集合。
- 在集合上右键选择查看>刷新,多执行几次刷新操作。
内容的提问来源于stack exchange,提问作者Peter Page




