Выберите с предложением where и без него в том же запросе - PullRequest
2 голосов
/ 02 апреля 2012

Я пытаюсь найти способ суммирования сумм, которые соответствуют определенному термину, а также сумм, которые не соответствуют ему. Например, если моя таблица выглядит следующим образом

user  amount  description
1     34      bike
1     78      toys
2     3       fuel
2     12      bike

Я пытаюсь получить таблицу, которая в итоге будет выглядеть так:

user   amount spent on bike  amount spent total
1      34                    112
2      12                    15

Я использую MySQL

1 Ответ

1 голос
/ 02 апреля 2012

Вы можете использовать оператор CASE в группе SUM :

SELECT user,
       SUM(CASE WHEN description = 'bike' THEN amount ELSE 0 END) bike_amount,
       SUM(amount) total_amount
FROM mytable
GROUP BY user
...