я следующие отношений в моей базе данных,PostgreSQL: Получение суммы значений аналогичных идентификаторов отчетливо
id | month | balance |
-----------+------------+---------+
0009gmail | 2016-01-01 | 2000 |
0009gmail | 2016-02-01 | 3500 |
0009gmail | 2016-03-01 | 800 |
0009gmail | 2016-04-01 | 1400 |
0009gmail | 2016-05-01 | -500 |
Проблема, я хочу, сумму баланса отчетливого ид с наличием даты меньше указанной датой,
Я использую этот запрос для такой:
select distinct(id),sum(balance) from payment group by id,month having month<'2016-06-22';
но дает этот результат,
id | sum
-------------+---------
0009gmail | 2000
0009gmail | 800
0009gmail | 1400
0009gmail | 3500
0009gmail | -500
Я думаю, что я получаю этот результат из-за сдачи месяца в группе по статье, но удаление же выдает ошибку, что месяц должен быть в любой группе из функции агрегации, я хочу этот вывод,
id | sum
----------+---------
0009gmail | 7200
пожалуйста, помогите ..
Если есть еще одна запись с id 0009hotmail ...? –
Итак, группа, группирующая все индивидуальные идентификаторы, правильно ...? –
'group by' производит одну строку для каждой комбинации ключей в разделе' group by', с итогами, рассчитанными в 'select'. –