使用MySQL SQL查詢計算另一張表中欄位的總和
P粉244155277
P粉244155277 2024-04-06 19:39:29
0
1
799

我有一個這樣的模式:具有屬性「user_id」和「username」的使用者表 以及具有屬性「customer_id」(user_id 的 FK)和「finalPrice」的訂單表 資料庫結構定義 我想要獲得所有訂單組合中價格最高的用戶(基本上是訂單的所有 FinalPrice 值的總和,其中 customer_id = user_id) 無法完全想出解決方案,因此將感謝您的支持

select sum( (select o.final_price from `order` o where u.user_id=o.customer_id)) 
from user u group by u.user_id

是我嘗試過的,但我不斷遇到 「子查詢返回超過 1 行」 錯誤訊息。嘗試閱讀文檔,但我對 SQL 仍然非常缺乏經驗。

P粉244155277
P粉244155277

全部回覆(1)
P粉710478990

根據您的查詢 您不能像這樣使用 SUM 函數,而是使用內部的 SUM,這就是為什麼它會拋出類似 Subquery 傳回超過 1 行的錯誤

SELECT  
u.user_id,
(SELECT SUM(o.final_price) FROM `order` o WHERE u.user_id=o.customer_id)
FROM 
user u 
GROUP BY u.user_id;
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板