2016-06-07 3 views
1

나는 어떤 상위 10 대 고객이 매장에서 가장 많은 돈을 썼는지 알아 내려고합니다. 금액은 1 회 구입시 사용한 금액입니다. 각 고객에 대한 모든 구매를 합산하여 내림차순으로 정렬해야합니다.고객이 총계로 소비 한 금액을 알아보십시오

SELECT amount, name 
FROM `payment`, `customer_list` 
ORDER BY amount DESC 
LIMIT 10; 

각 고객에 대한 금액을 합산하는 방법을 알고 싶습니다.

답변

1

사용 합()에 의해 goup 및 내부 조인 .. 샘플에서 고객과의 관계는 c.id = p.customer_id 당신이 당신의 진짜 열 이름을 채택해야

SELECT sum(p.amount) tot, c.name 
FROM `payment` as p 
inner join `customer_list` on c.id= =p.customer_id 
group by c.name 
ORDER BY tot DESC 
LIMIT 10; 
관련 문제