gpt4 book ai didi

sql-server - 在sql server中过滤COUNT

转载 作者:行者123 更新时间:2023-12-02 07:42:37 25 4
gpt4 key购买 nike

Possible Duplicate:
SQL Equivalent of COUNTIF()

我可以在 COUNT 本身内部合并某种过滤机制吗?我不想在查询的 WHERE 或 JOIN 中使用它(因为它是大型查询的一部分,其中还有我不想得到的其他列)受 where 和 join 条件影响)。

例如,我可以在 SUM 中使用 case

SUM(CASE WHEN work_status IN ('V','L') THEN shift_total_hours ELSE 0 END),

我也可以在 COUNT 中执行类似的操作吗,这样我就可以只获取特定行的计数

类似这样的:

COUNT(CASE WHEN work_status IN ('V','L') THEN <should come in count> ELSE <exclude from count> END)

非常感谢。

最佳答案

你可以直接使用

COUNT(CASE WHEN work_status IN ('V','L') THEN 1 END)

对于不匹配指定条件的行,CASE 表达式返回 NULL,而 COUNT 仅计算 NOT NULL

关于sql-server - 在sql server中过滤COUNT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5434557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com