SQL: Selecting IDs that don't have any rows with a certain value for a column

后端 未结 3 2007
慢半拍i
慢半拍i 2021-01-12 21:11

I want to select the distinct IDs (which is associated with multiple rows) that DOESN\'T have any rows where VAL = \'current\'.

For example, in a table like this:

3条回答
  •  醉酒成梦
    2021-01-12 21:27

    SELECT DISTINCT id
    FROM table
    WHERE id NOT IN (SELECT id
                     FROM table
                     WHERE val = 'current')
    

    or:

    SELECT a.id
    FROM table a
    LEFT JOIN table b ON a.id = b.id AND b.val = 'current'
    WHERE b.id IS NULL
    

提交回复
热议问题