gpt4 book ai didi

sql - 在 CASE WHEN 中单独使用 COUNT

转载 作者:行者123 更新时间:2023-12-03 17:39:26 24 4
gpt4 key购买 nike

我有一列 MessageId,并且必须获取不同 MessageId 的计数,如果结果为 1,则必须将计数显示为 0,否则显示计数值本身。如果数据集较多,使用distinct两次会比较耗时。

...
CASE
WHEN count(DISTINCT MessageId) = 1
THEN 0
ELSE count(DISTINCT MessageId)
END as Count
...

是否有办法仅使用单个查询本身使用 COUNT(DISTINCT) 一次?并且也不想使用多个查询,例如将其分配给变量然后使用它。

最佳答案

这是一种方法:

COALESCE(NULLIF(COUNT(DISTINCT MessageId), 1), 0)

关于sql - 在 CASE WHEN 中单独使用 COUNT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55454341/

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