SQL get names who didnt work on a project

后端 未结 4 1452
刺人心
刺人心 2021-01-27 10:01

I would like to retrieve the names of people who didn\'t work on a project in PostgreSQL.

I got a table named employees with their names and

4条回答
  •  -上瘾入骨i
    2021-01-27 10:47

    This is easy with NOT IN:

    select * from employees
    where ssn not in (select ssn from works_on)
    

    Alternative with LEFT JOIN:

    SELECT fname,lname
    FROM employee w
    LEFT JOIN works_on wa 
    ON (wa.ssn = w.ssn)
    WHERE wa.ssn IS NULL
    

    This alternative is useful as you sometimes have more complicated requirements that can't easily be expressed with IN or EXISTS.

提交回复
热议问题