2016-09-01 21 views
-2

在客戶表:如何使用mysql從客戶表中獲得前2名客戶?

ID| Name | Cost 
------------------------- 
1| name1 | 1000 
2| name2 | 200 
3| name3 | 700 
4| name2 | 700 
5| name3 | 800 

我需要找出前2名的客戶ID & &從客戶表費用誰買。 任何人都可以幫助我嗎?

我的預期輸出:

ID| Name | Cost 
---------------------- 
1| name1 | 1000 
2| name2 | 900 
+1

使用'GROUP BY ..爲了通過.. limit'。 –

+1

這似乎是一件相當簡單的事情嗎?也許你應該嘗試和學習MySQL的基礎知識好一點?你試過什麼了? – Jester

+1

ID在你的結果中毫無意義 – Strawberry

回答

3
SELECT 
    GROUP_CONCAT(ID) as payment_ids, 
    Name, 
    SUM(Cost) as total_cost 
FROM 
    Customer 
GROUP BY 
    Name 
ORDER BY 
    total_cost DESC 
LIMIT 2