我正在努力解決一個問題:「哪個城市的客戶觀看的電影數量最多?(根據租用的電影數量)」。SQL如何統計每個客戶的總行數?
我正在使用MySQL中的Seikila示例數據庫。城市實體與租賃和客戶實體沒有關係,但是有一個地址實體包含對客戶實體依賴於id的address_id。然後,地址實體具有城市實體也獲得的稱爲city_id的屬性。而customer_id屬性鏈接了客戶和租賃實體。
此外,我必須計算每個城市每個客戶租用的電影總數。
我只是做連接的一部分(代碼更新):
select rental_id,cust.customer_id,city.city_id,city.city from rental as r
inner join customer as cust on r.customer_id=cust.customer_id inner join
address as a on cust.address_id=a.address_id inner join city as city on
city.city_id=a.city_id
我意識到,我應該補充city_id表,所以我的問題是:
怎麼算的數排一個獨特的customer_id,這樣我就可以得到電影租的總數的在每個城市,並且用一組?
使用'COUNT(*)'和'GROUP BY'。你甚至在問題標題中寫下了這個問題。 – Barmar
我知道這是使用count(),但我想單獨計算每個customer_id,而不是客戶總數 –
這聽起來像你只是想按城市計算租金,而不是客戶數。 – Barmar