【发布时间】:2021-07-09 22:40:55
【问题描述】:
我需要找出 SQL 机制,以使用我用 CTE 计算的 5 个类别来过滤我的整体结果。当我用逗号“加入”时:从表中,结果会成倍增加。由于 cte 中的计数计算,我真的没有一个字段可以进行正确的连接。
我觉得它应该是 where 语句中的子查询,但我有 5 个结果,我认为它只适用于 1 个结果。
我已经尝试过(尽我所能)cte,各种子查询,有,存在
工作 CTE:
DECLARE @END VARCHAR(25)='2021-04-04 23:59:59.000' --Sunday
DECLARE @START DATEtime = DATEADD(DD,-364,@END)
;With CTE as (
Select Top 5
TIER_3
,COUNT(INCIDENT_NUMBER) AS CTE_Count
FROM vIncidentTickets
WHERE LAST_RESOLVED_DATE between @START and @END
AND GROUP = 'Cell'
AND COMPANY = 'HQ'
AND ORGANIZATION = 'CSS'
GROUP BY TIER_3
ORDER BY COUNT(INCIDENT_NUMBER) DESC
)
--选择部分没有提供正确的结果
Select
INCIDENT_NUMBER
,CTE.TIER_3
FROM vIncidentTickets,CTE
WHERE LAST_RESOLVED_DATE between @START and @END
AND GROUP = 'Cell'
AND COMPANY = 'HQ'
AND ORGANIZATION = 'CSS'
我希望 CTE 结果过滤 Select 查询。
【问题讨论】:
标签: sql filter subquery common-table-expression