問題文
問題
customers(顧客)・orders(注文)・products(商品)の3つのテーブルがあります。
orders.customer_id は customers.id を、orders.product_id は products.id を参照します。
各注文について、顧客名・商品名・注文金額を、金額の高い順に出力してください。
出力する列は次の3つ、この順序・この列名で出してください:
| 列名 | 内容 |
|---|---|
customer_name | 顧客の名前(customers.name) |
product_name | 商品の名前(products.name) |
amount | 注文金額(orders.amount) |
ヒントを見る
JOIN は複数つなげられます。orders を軸に、customers と products をそれぞれ結合します。
同名の列(name)があるので、テーブル名.列名 で区別し、AS で出力列名を付けます。
スキーマ
使用データベース:PostgreSQL 16customers4 行
| id | name |
|---|---|
| 1 | Alice |
| 2 | Bob |
| 3 | Carol |
| 4 | Dave |
products5 行
| id | name | category | price |
|---|---|---|---|
| 1 | Keyboard | Peripheral | 1200 |
| 2 | Mouse | Peripheral | 800 |
| 3 | Monitor | Display | 1500 |
| 4 | Cable | Accessory | 640 |
| 5 | Webcam | Peripheral | 970 |
orders5 行
| id | customer_id | product_id | amount |
|---|---|---|---|
| 1 | 1 | 1 | 1200 |
| 2 | 2 | 2 | 800 |
| 3 | 1 | 3 | 1500 |
| 4 | 3 | 4 | 640 |
| 5 | 2 | 5 | 970 |
SQL
⌘⏎ / Ctrl+Enter で実行「実行」を押すと、ここにSQLの実行結果が表示されます。