SQL statement to get all customers with no orders

前端 未结 3 1540
甜味超标
甜味超标 2021-02-07 06:14

I have a typical Persons table and an Orders table defined in such a way that I can do JOIN query as the following to return Orders for all Persons.

SELECT Perso         


        
3条回答
  •  孤独总比滥情好
    2021-02-07 06:44

    You may want to use LEFT JOIN and IS NULL:

    SELECT     Persons.LastName, Persons.FirstName
    FROM       Persons
    LEFT JOIN  Orders ON Persons.id = Orders.Person_id
    WHERE      Orders.Person_id IS NULL;
    

    The result of a left join always contains all records of the "left" table (Persons), even if the join-condition does not find any matching record in the "right" table (Orders). When there is no match, the columns of the "right" table will NULL in the result set.

提交回复
热议问题