2
好人,需要MySQL的幫助。嘗試了幾個在線解決方案,但可以解決問題。MySQL與GROUP BY的LIMIT(3)行的總和
我有這個簡單的表格。
name amount
john | 150
john | 100
john | 100
john | 150
jack | 300
jack | 100
jack | 100
基本上,我必須得到至少有3行(按最高金額排序)中總計爲500的用戶。 正確的答案只能返回jack
,因爲只有他在3條記錄中總計500(按最高排序)。 john
總共有500個,其中3個最高金額只返回400(150 + 150 + 100),所以查詢不返回john
。
SELECT
*,
SUM(amount) as sums
FROM (SELECT * FROM transfer GROUP BY name ORDER BY amount DESC LIMIT 3) as ttl
GROUP BY name
HAVING sums >= 500
它工作正常(至少沒有錯誤),但第二個選擇(括號內的一個)只返回第一行。
任何幫助,高度讚賞。