我有以下
WorkflowID FK_UA DateApprobation
----------- -------------------- -----------------------
1 3 NULL
2 1 NULL
3 1 NULL
4 2 2013-05-31 09:22:33.000
我想要做的是获得一堆聚合字段。
我想获得批准的工作流程、未批准的工作流程、所有工作流程
我知道的方式是“DateApprobation”字段是否为空或有值。
问题是,我希望能够通过“FK_UA”对其进行分组,所以我不知道如何使用 group by 子句来拥有 3 个聚合函数 (COUNT)。
我正在寻找一个可以实现这一目标的查询,我尝试了几个类似的案例,发现它返回了一些奇怪的值。
我试过这个:
SELECT
FK_UA
,COUNT(WorkflowID) AS TOTAL
,COUNT(CASE when DateApprobation is not null then 1 else 0 end) AS APPROVED
,COUNT(CASE when DateApprobation is null then 1 else 0 end) AS NOT_APPROVED
FROM Workflow
GROUP BY
FK_UA
但它总是为所有 3 个值返回相同的东西!