|
|
|
Требуется помощь в решении задачки
|
|||
|---|---|---|---|
|
#18+
Задание: Существует таблица платежей Pays paysdate | Дата платежа summ | Сумма платежа В одну дату может не быть платежа, может быть один или несколько платежей. Необходимо вернуть сумму платежей на каждую дату за период (месяц). Если на какую-то дату нет платежей, вывести в поле «summ» null. Пример результата за три дня: Исходные данные: paysdate | summ 05.03.13 | 15000 05.03.13 | 10000 07.03.13 | 31400 Результат должен быть таким, т.е. запрос должен выдавать следующую выборку: paysdate | summ 05.03.13 | 25000 06.03.13 | null 07.03.13 |31400 Предполагаю, что можно это реализовать на хранимой процедуре или курсорах, одним запросом вряд ли получится решить. Меня хватило только на это: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. дальше сообразить не получается (не знаю как вставить в выборку -> 06.03.13 | null) , требуется ваша помощь. С хранимыми процедурами, курсорами, тригерами никогда ранее не приходилось работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2016, 00:24 |
|
||
|
Требуется помощь в решении задачки
|
|||
|---|---|---|---|
|
#18+
okuznetsov, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. пробуйте. может не сделал много ошибок, и работать будет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2016, 09:39 |
|
||
|
Требуется помощь в решении задачки
|
|||
|---|---|---|---|
|
#18+
okuznetsov, P.S. предполагалось что "Pays".paysdate у вас типа DATE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.03.2016, 09:41 |
|
||
|
Требуется помощь в решении задачки
|
|||
|---|---|---|---|
|
#18+
okuznetsov, Сгенерируйте последовательность дат (см. функцию generate_series) и от нее outer join к сгруппированным pays ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2016, 14:33 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=95&tid=1997356]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
66ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 227ms |
| total: | 376ms |

| 0 / 0 |
