--- tags: sql, LeetCode --- # 607. Sales Person (資訊來自於`leetcode 607`[ Sales Person](https://leetcode.com/problems/sales-person/description/?envType=study-plan&id=sql-i)) ### 銷售人員 --- ![](https://i.imgur.com/S4pgXqr.png) order_id 是該表的主鍵列。 com_id 是 Company 表中 com_id 的外鍵。 sales_id 是 SalesPerson 表中 sales_id 的外鍵。 此表的每一行都包含有關一個訂單的信息。 這包括公司的 ID、銷售人員的 ID、訂單的日期和支付的金額。 編寫一個 SQL 查詢來報告所有沒有與名稱為“RED”的公司相關的訂單的銷售人員的姓名。 以任意順序返回結果表。 ![](https://i.imgur.com/Quafdzp.png) ### 解題方式: ```sql= select M.name from SalesPerson M where M.name not in ( select M.name from SalesPerson M left outer join Orders A on M.sales_id = A.sales_id left outer join Company B on A.com_id = B.com_id where B.name = 'RED') ``` ### 解題解析: 我們可以先利用題目給我們的條件,把三個TABLE都JOIN起來,JOIN起來後我們可以找出訂貨公司有"RED"的銷售員,再用WHERE找出沒有與"RED"公司交易的銷貨員