注文の無い顧客も一覧に出す(LEFT JOIN)

中級

問題文

問題

customers(顧客)と orders(注文)があります。orders.customer_idcustomers.id を参照します。

すべての顧客について、顧客名と注文金額を出力してください。注文が1件も無い顧客も、金額を NULL として1行出力してください。 並び順は、顧客名の昇順、同じ顧客の中では金額の昇順とします。

出力する列は次の2つ、この順序・この列名で出してください:

列名内容
customer_name顧客の名前(customers.name
amount注文金額(注文が無ければ NULL
ヒントを見る

普通の JOIN(内部結合)だと、注文の無い顧客は消えてしまいます。 左側(customers)を必ず残すには LEFT JOIN を使います。

スキーマ

使用データベース:PostgreSQL 16
customers4
idname
1Alice
2Bob
3Carol
4Dave
products5
idnamecategoryprice
1KeyboardPeripheral1200
2MousePeripheral800
3MonitorDisplay1500
4CableAccessory640
5WebcamPeripheral970
orders5
idcustomer_idproduct_idamount
1111200
222800
3131500
434640
525970

SQL

⌘⏎ / Ctrl+Enter で実行
エディタを読み込み中…

「実行」を押すと、ここにSQLの実行結果が表示されます。