バックグラウンド
顧客の購入レコードを含むテーブルがあり、テーブルには Coupon_id という名前の列があり、顧客が購入中にクーポンを使用しなかった場合、この列は null になり、使用した場合はクーポン ID が含まれます。テーブルには、1 人の顧客の複数の購入を含めることができます。顧客は、ある購入ではクーポンを使用し、別の購入では使用しなかった可能性があります。
+-------+-------------+-----------+-------------+
| ID | customer_id | coupon_id | other_data |
+-------+-------------+-----------+-------------+
| 0 | 1 | 32 | ... |
| 1 | 1 | null | ... |
| 2 | 1 | null | ... |
| 3 | 1 | null | ... |
| 4 | 2 | null | ... |
| 5 | 3 | 11 | ... |
| 6 | 4 | null | ... |
| 7 | 4 | null | ... |
+-------+-------------+-----------+-------------+
問題
クーポンを使用して購入したことがないすべての顧客の customer_id を取得したいと考えています。私が使用している現在のクエリは、クーポンで購入した顧客をまだ返しています。
SELECT customer_id from checkouts c
WHERE code_id IS NULL
GROUP BY customer_id
ORDER BY customer_id asc
質問
クーポンを使用して購入したことのない顧客の一意の ID のリストを選択するにはどうすればよいですか?