我有以下内容
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个值返回相同的结果!