繁体   English   中英

SQL COUNT无法与将SELECT查询嵌套在LEFT外部联接中一起使用

[英]SQL COUNT not working with nesting a SELECT query inside a LEFT outer join

我需要一个Count才能在我的主选择中使用原始问题希望通过INTO现有的工作查询中的Group by添加一个Count查询

--- this join works ---
LEFT OUTER JOIN
WorkItemAssignedToUserFactvw AS IATUFact 
ON 
WI.WorkItemDimKey = IATUFact.WorkItemDimKey 
AND IATUFact.DeletedDate IS NULL 
--- this part below is in both queries ---
LEFT OUTER JOIN
UserDimvw AS AssignedToUser 
ON 
IATUFact.WorkItemAssignedToUser_UserDimKey = AssignedToUser.UserDimKey 

如果我将查询更改为具有选择语句的Left外部联接,那么我将遇到错误

LEFT OUTER JOIN
(
    SELECT
        WorkItemDimKey--,
        DateKey,
        --COUNT(WorkItemAssignedToUser_UserDimKey) AS Assignments
    FROM
        WorkItemAssignedToUserFactvw
    WHERE
        DeletedDate IS NULL
    GROUP BY
        WorkItemDimKey--,
        --DateKey
)
     IATUFact
        ON  WI.WorkItemDimKey = IATUFact.WorkItemDimKey

--- same query join as before except now it had an error 
LEFT OUTER JOIN
UserDimvw AS AssignedToUser 
ON 
IATUFact.WorkItemAssignedToUser_UserDimKey = AssignedToUser.UserDimKey 

错误:

消息207,级别16,状态1,行292无效的列名称'WorkItemAssignedToUser_UserDimKey'。

在您的SELECT中“使用”应该使用WorkItemAssignedToUser_UserDimKey来解决此问题,并将其添加到组中。

LEFT OUTER JOIN
(
    SELECT
        WorkItemAssignedToUser_UserDimKey,
        WorkItemDimKey,
        DateKey,
        COUNT(WorkItemAssignedToUser_UserDimKey) AS Assignments
    FROM
        WorkItemAssignedToUserFactvw
    WHERE
        DeletedDate IS NULL
    GROUP BY
        WorkItemAssignedToUser_UserDimKey,
        WorkItemDimKey,
        DateKey
)
     IATUFact
        ON  WI.WorkItemDimKey = IATUFact.WorkItemDimKey

--- same query join as before except now it had an error 
LEFT OUTER JOIN
UserDimvw AS AssignedToUser 
ON 
IATUFact.WorkItemAssignedToUser_UserDimKey = AssignedToUser.UserDimKey 

也许您已经注释掉了东西,看看是否是问题所在?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM