問題文
問題
カテゴリ(products.category)が Peripheral の商品を1つでも買ったことがある顧客の名前を、重複なく、名前の昇順で出力してください。
出力する列は次の1つ、この列名で出してください:
| 列名 | 内容 |
|---|---|
customer_name | 顧客名(customers.name) |
ヒントを見る
4テーブルを結合し WHERE p.category = 'Peripheral' で絞ります。
同じ顧客が複数の周辺機器を買っていると重複するので、SELECT DISTINCT で1回にまとめます。
スキーマ
使用データベース:PostgreSQL 16customers5 行
| id | name | city |
|---|---|---|
| 1 | Alice | Tokyo |
| 2 | Bob | Osaka |
| 3 | Carol | Tokyo |
| 4 | Dave | Nagoya |
| 5 | Eve | Osaka |
products6 行
| id | name | category | price |
|---|---|---|---|
| 1 | Keyboard | Peripheral | 3000 |
| 2 | Mouse | Peripheral | 1500 |
| 3 | Monitor | Display | 20000 |
| 4 | Cable | Accessory | 500 |
| 5 | Webcam | Peripheral | 4000 |
| 6 | Desk | Furniture | 15000 |
orders6 行
| id | customer_id | order_date |
|---|---|---|
| 1 | 1 | 2024-01-10 |
| 2 | 1 | 2024-02-15 |
| 3 | 2 | 2024-01-20 |
| 4 | 3 | 2024-03-05 |
| 5 | 2 | 2024-03-22 |
| 6 | 4 | 2024-02-28 |
order_items11 行
| id | order_id | product_id | quantity |
|---|---|---|---|
| 1 | 1 | 1 | 1 |
| 2 | 1 | 2 | 2 |
| 3 | 2 | 3 | 1 |
| 4 | 3 | 2 | 1 |
| 5 | 3 | 4 | 3 |
| 6 | 4 | 1 | 2 |
| 7 | 4 | 5 | 1 |
| 8 | 5 | 3 | 1 |
| 9 | 5 | 4 | 2 |
| 10 | 6 | 2 | 1 |
| 11 | 6 | 5 | 2 |
SQL
⌘⏎ / Ctrl+Enter で実行「実行」を押すと、ここにSQLの実行結果が表示されます。