看板 Database 關於我們 聯絡資訊
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行) 資料庫名稱:MySQL 資料庫版本:MyWorkbench 8.0 內容/問題描述: 最近初學SQL, 想請教以下一個問題。 共有兩個表(Customer/Customer_Order) https://i.imgur.com/KuUAAKS.jpg
https://i.imgur.com/EbQLT4V.jpg
題目:需要返回cust_name, total number of orders (計算Customer_order裡每個cust_ id的數量),包含沒order的cust_name (顯示0),必須使用correlated subquery和scalar 。 感謝看完那麼長的問題,我目前怎麼寫都頂多返回‘不含0’的版本,苦無計策! 附上我寫的不含0版本: SELECT c.cust_name, CO.cnt as total_number_of_orders FROM Customer c, (SELECT co.cust_id, count(co.cust_id) as cnt FROM Customer_Order co GROUP BY co.cust_id) CO WHERE c.cust_id= CO.cust_id GROUP BY c.cust_id; 希望板上高手能提點提點!謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.47.0.252 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1586958699.A.230.html ※ 編輯: crystal80314 (114.47.0.252 臺灣), 04/15/2020 21:52:37
cutekid: customer left join order 後,再做 group by 04/15 22:07
crystal80314: 謝C大! 想確認是指Customer和Customer_Order做left 04/15 22:24
crystal80314: outer join後,再group by cust_id嗎? ( 插鴃ꬩ 04/15 22:24
cutekid: 對喔 04/15 22:38
paranoia5201: 同上,left join後再group by。 04/15 23:10
crystal80314: https://i.imgur.com/eiQBHpr.jpg 04/15 23:46
crystal80314: 想再求問,我跑出結果了,但total_number_of_order 04/15 23:48
crystal80314: 卻返回一樣的值....( ;棗驉ꬩ 04/15 23:48
cutekid: https://imgur.com/a/XlmdgGG 04/16 01:45
crystal80314: 感謝C大出手,成功解決!!! 04/16 09:17
aidansky0989: SQL92/95的內外連接先學再寫題目 04/16 19:49