gpt4 book ai didi

sql - 甲骨文 SQL : How to write below SQL in Oracle

转载 作者:行者123 更新时间:2023-12-04 00:29:07 26 4
gpt4 key购买 nike

有一个表t1:

id type 
1 a
1 b
2 c
2 a
3 a
3 a
4 a

现在我需要检查id是否只有a类型且计数为1(单个),即上面数据中只有id 4满足这个条件

SELECT type, COUNT (1)
FROM t1
where id = :id
GROUP BY type
HAVING COUNT (1) = 1;

我使用上面的 SQL 查询来获取数据,然后在代码中使用它。这不是一个好的解决方案,谁能帮我用一个 SQL 查询得到正确的结果?

最佳答案

我会按 ID 分组并根据两个方面进行过滤:

  1. 总数为 1
  2. 非类型 a(使用 case 语句)的行数为 0


SELECT   id
FROM t1
GROUP BY id
HAVING COUNT(*) = 1 AND COUNT(CASE WHEN type <> 'a' THEN 1 END) = 0

关于sql - 甲骨文 SQL : How to write below SQL in Oracle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53829780/

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