2014-03-10 3 views
-2

Мне нужно вынуть правильный номер CustomerNumber, но он дает мне первый номер клиента, который он нашел.как получить правильный «customerNumber»?

SELECT temp.customerNumber, MAX(temp.sum) AS max 
FROM (
    SELECT p.customerNumber, SUM(p.amount) AS sum 
    FROM payments p 
    GROUP BY p.customerNumber 
) AS temp 
+2

Разве вы не спросили об этом? http://stackoverflow.com/questions/22305347/why-does-this-give-me-the-wrong-customernumber – hermann

+0

Не задавайте один и тот же вопрос дважды. Обновите существующий вопрос, если есть новые детали, которые вы хотите добавить. –

+0

Не задавайте тот же вопрос еще раз. –

ответ

0
SELECT temp.customerNumber, MAX(temp.tsum) AS tmax 
FROM (
    SELECT p.customerNumber, SUM(p.amount) AS tsum 
    FROM payments p 
    GROUP BY p.customerNumber) AS temp 
GROUP BY temp.customerNumber 

Попробуйте это.

+0

thats wright! но теперь мне нужно вытащить клиента, у которого есть максимальный максимум, и им не получить его! – user3374271

+0

ВЫБОР ТОП 1 temp.customerNumber, temp.tsum КАК Tmax FROM (SELECT, p.customerNumber, SUM (p.amount) КАК ЦУМе ОТ платежей р GROUP BY p.customerNumber), как временный ORDER BY DESC Tsum – user1238918

Смежные вопросы