|
Ругается на Coalese внутри рекурсивного запроса
|
|||
---|---|---|---|
#18+
Есть поле timing формата json в котором по дня указывается время начала и конца рабочего дня. Для примера выглядит так: Код: sql 1.
Мне нужно посчитать кол-во рабочих часов для сотрудника за все дни месяца. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39.
Такой вариант работает, но он слишком громоздкий. Решил попробовать сделать рекурсивный запрос Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
Ругается на COALESCE авторERROR: function Сoalesce(integer, integer) does not exist LINE 1: ...d = 420 AND se.staffing_id = 262 UNION SELECT sum+СOALESCE(@... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. Без неё запрос выполняется выполняется. В чём причина? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2017, 01:29 |
|
Ругается на Coalese внутри рекурсивного запроса
|
|||
---|---|---|---|
#18+
Егоров Иван, 1) Крайне странно, у вас точно обычный postgresql а не какой то форк недоделанный? 2) Hm у вас там случайно COALESCE не с русской С в начале? Очень на то похоже. PS: чтобы наверняка поставьте coalesce (lower case + английские буквы да). -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2017, 03:52 |
|
Ругается на Coalese внутри рекурсивного запроса
|
|||
---|---|---|---|
#18+
Егоров Иван, зачем сразу изводить себя такими запросами, чемодан коалесков, рекурсивные запросы.... Может чуть проще, у ПГ есть прекрасные функции для работы с JSON, превращаем его нехитрыми манипуляциями в табличку и считаем любую сумму, которая требуется (маленькое неудобство - потребуется промежуточный тип создать). Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
"2""12:00:00""00:00:00""12:00:00""192:00:00""3""12:00:00""00:00:00""12:00:00""192:00:00""6""12:00:00""00:00:00""12:00:00""192:00:00""7""12:00:00""00:00:00""12:00:00""192:00:00""10""12:00:00""00:00:00""12:00:00""192:00:00""11""12:00:00""00:00:00""12:00:00""192:00:00""14""12:00:00""00:00:00""12:00:00""192:00:00""15""12:00:00""00:00:00""12:00:00""192:00:00""18""12:00:00""00:00:00""12:00:00""192:00:00""19""12:00:00""00:00:00""12:00:00""192:00:00""22""12:00:00""00:00:00""12:00:00""192:00:00""23""12:00:00""00:00:00""12:00:00""192:00:00""26""12:00:00""00:00:00""12:00:00""192:00:00""27""12:00:00""00:00:00""12:00:00""192:00:00""30""12:00:00""00:00:00""12:00:00""192:00:00""31""12:00:00""00:00:00""12:00:00""192:00:00" ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2017, 14:29 |
|
|
start [/forum/topic.php?fid=53&fpage=79&tid=1996747]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 387ms |
total: | 518ms |
0 / 0 |