Leetcode Note: MySQL - Sales Person

Sales Person - LeetCode
https://leetcode.com/problems/sales-person/

  • MySQL で取り組んだメモ

所感

  • SalesPerson, Company, Orders テーブルから Sales の name を抽出する
  • Company テーブルで name が RED のレコードに紐づく Sales は除外する

回答

Sales Person - LeetCode
https://leetcode.com/problems/sales-person/solution/

SELECT
    s.name
FROM
    salesperson s
WHERE
    s.sales_id NOT IN (SELECT
            o.sales_id
        FROM
            orders o
                LEFT JOIN
            company c ON o.com_id = c.com_id
        WHERE
            c.name = 'RED')
  • NOT IN で除外を行い、除外条件は OUTER JOIN a.k.a LEFT JOIN で抽出した内容を使用する