首页 > 解决方案 > 如果所有行都满足sql中的条件,则结果为true

问题描述

基本上我正在寻找条件的解决方案,其中表具有以下行,我只想选择所有行都满足条件的那些。

ID  category    flag
1       A       1
2       A       1
3       A       0
4       B       1
5       C       0

预期结果是 B,其类别的标志为真。

标签: sql

解决方案


希望我的回答对您的问题有所帮助。在子查询中,通过过滤标志来创建类别列表。

SELECT * 
FROM tablename a 
WHERE a.category NOT IN (
      SELECT b.category
      FROM tablename  b 
      WHERE b.flag=0)

推荐阅读