sql - 返回值 X,其中所有值符合其他列中的条件的行
问题描述
我需要返回一个数字列表,其中具有相同数字的所有行都符合另一列中的标准。
例如,具有相同“num”的所有行在 Check-in 列中必须具有非空值。
num| Check-in
1| null
1| X
1| X
2| X
2| X
3| X
3| X
期望回报:2, 3
我知道必须有一种简单的方法来做到这一点而无需循环!谢谢!
解决方案
您可以尝试使用过滤器进行分组having
,这里它将每组中的行数与每组中不匹配的行数进行比较null
,您只想要计数匹配的那些行。
select num
from t
group by num
having Count(*)=count(checkin);
推荐阅读
- python - Django Rest Framework Serializer DateTimeField 将输入数据验证为 AD,并且在第 2 个月(FEB)超过 29 天时不接受输入
- python - 从训练测试拆分到使用管道在 sklearn 中进行交叉验证
- bash - BASH:循环数组值无限制
- java - 加入 jOOQ 时无法获取我的 SpeakerRecord 实体
- python - 如何将我的自定义处理程序添加到 python logging.config.dictConfig()
- python - 如何在python 3.9中打印包含多个句子中的数字的特定句子?
- python - 如何在命令中添加空格
- ios - iPhone 曝光时间 ISO 和曝光补偿
- c++ - 请解释以下赋值语句的输出
- javascript - 使用 Java 脚本更改徽标图像源