2012-06-17 2 views
2

Я ищу SQL-инструкцию, которая суммирует некоторые конкретные значения и сортирует результат. Чтобы быть более ясным: У меня есть таблица, которая состоит из идентификаторов и значений:MySQL: как подвести итоги строк и отсортировать результат?

id  val 
ab  10 
ab  12 
ab  3 
cd  25 
cd  10 
ef  2 
ef  7 

Здесь все значения для AB, CD и эф должны быть подведены и упорядоченный по результату, так что я получаю следующее:

cd  35 
ab  25 
ef  9 

Так есть SQL-оператор, который выполняет эту задачу за один раз?

+0

Вы можете узнать больше здесь: http://www.tizag.com/mysqlTutorial/mysqlgroupby.php http://dev.mysql.com/doc /refman/5.0/en/group-by-functions.html – biziclop

+0

Здравствуйте, Элми, вы хотите получить дополнительную информацию о инструкции GROUP BY? –

ответ

4
SELECT id, SUM(val) as total 
FROM your_table 
GROUP BY id 
ORDER BY total DESC; 
+2

sum - это ключевое слово, для псевдонима я предлагаю использовать что-то, что нет. (он будет работать нормально в mysql) –

+0

Очень хороший совет, я редактирую :) –

0

Используйте функцию группы sum:

select id, sum(val) as val from my_table group by id order by 2 desc 
Смежные вопросы