gpt4 book ai didi

mysql - SELECT CASE SQL 中的不同计数

转载 作者:可可西里 更新时间:2023-11-01 06:32:20 24 4
gpt4 key购买 nike

我有一个报告表,其中包含字段 Case(唯一编号)、ISR(个人安全报告 - 唯一编号)和 YearsOld.

每个 Case 可以有多个 ISR。我想计算年龄组内唯一案例的数量。

此 SQL 为我提供了 ISR 的数量:

SELECT  
COUNT(CASE WHEN `YearsOld` = -2) THEN 1 END) `No Report`,
COUNT(CASE WHEN `YearsOld` BETWEEN 0 AND 5) THEN 1 END) `0 to 5`
COUNT(CASE WHEN `YearsOld` BETWEEN 6 AND 12) THEN 1 END) `6 to 12`
FROM `Demographics`

有没有办法修改它以计算这些年龄组的 DISTINCT 案例

最佳答案

如果你的“case”变量是唯一的,你当然可以直接在 SQL CASE 语法中加上 distinct 关键字:

Count(distinct CASE when yearsold between 6 and 12 then case else null end)

这样,case 变量的每个唯一值只计算一次。

只是关于列命名的注释,如果您可以选择(即使用“case_num”而不是 case),我建议不要使用在 SQL 中有意义的词。

关于mysql - SELECT CASE SQL 中的不同计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10398010/

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