SCCM2012 SQL查询有错误

时间:2015-04-06 15:55:31

标签: sql sccm

我正在为我的SCCM集合创建一个SQL查询,但我发现存在错误。它没有告诉我错误是什么,规则对我来说没问题。

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, SMS_R_User.UniqueUserName
FROM SMS_R_System
JOIN SMS_UserMachineRelationship ON SMS_R_System.Name=SMS_UserMachineRelationship.MachineResourceName
JOIN SMS_R_User ON SMS_UserMachineRelationship.UniqueUserName=SMS_R_User.UniqueUserName
Where SMS_R_User.UniqueUserName in (select UniqueUserName from SMS_R_User where UserGroupName = "Domain\\GroupName")

1 个答案:

答案 0 :(得分:1)

假设你没有拼错任何列名,我唯一可以看到会引发错误的是"Domain\\GroupName"可能是'Domain\\GroupName'?双引号通常用作对象的带引号标识符,而单引号表示字符串文字。

使用双引号可能会出现如下错误:

  

Msg 207,Level 16,State 1,Line ??列名无效   '域\组名'。

此外,where子句中的子查询看起来不必要,此查询应该是等效的(如果我没有误读它):

SELECT 
    S.ResourceID,
    S.ResourceType,
    S.Name,
    S.SMSUniqueIdentifier,
    S.ResourceDomainORWorkgroup,
    S.Client, 
    U.UniqueUserName
FROM SMS_R_System S
JOIN SMS_UserMachineRelationship UMR ON S.Name = UMR.MachineResourceName
JOIN SMS_R_User U ON UMR.UniqueUserName = U.UniqueUserName
WHERE U.UserGroupName = 'Domain\\GroupName'