首页 > 解决方案 > 通过不包含值选择值

问题描述

我有下一张表 test_table:

loginId reportType
  1      2
  1      1
  2      2
  2      1
  3      1
  4      1
  5      1

我需要提取所有没有报告类型 2 的 id(这意味着 id:3、4、5),但由于某种原因,下一个查询返回所有 id:

select loginId from test_table
where reportType = 1 and reportType != 2

标签: sqlpostgresql

解决方案


SELECT LOGINID FROM TEST_TABLE AS C WHERE C.REPORTTYPE=1
  EXCEPT 
SELECT LOGINID FROM TEST_TABLE AS C WHERE C.REPORTTYPE=2

推荐阅读