|
Какая-то хрень в суммировании строк в пустом подзапросе | ☑ | ||
---|---|---|---|---|
0
toypaul
гуру
18.07.16
✎
08:42
|
Есть такой запрос
|ВЫБРАТЬ | СУММА(ВложенныйЗапрос.План) КАК План, | СУММА(ВложенныйЗапрос.Постановка) КАК Постановка, | СУММА(ВложенныйЗапрос.Тестирование) КАК Тестирование |ИЗ | (ВЫБРАТЬ | Постановки.ТрудозатратыПлан КАК План, | Постановки.Трудозатраты КАК Постановка, | 0 КАК Тестирование, | Постановки.Ссылка КАК Ссылка | ИЗ | Постановки КАК Постановки | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | 0, | 0, | Тестирование.Трудозатраты, | Тестирование.Ссылка | ИЗ | Тестирование КАК Тестирование) КАК ВложенныйЗапрос"; если убрать верхнее суммирование, то запрос ничего не возвращает. а если оставить так, то запрос возвращает одну строку с NULL по всех полях. это у меня глюк в башке или аналогичный Т-СКЛ так бы и сработал? |
|||
1
Горогуля
18.07.16
✎
08:50
|
где-то ты врёшь
|
|||
2
toypaul
гуру
18.07.16
✎
08:50
|
Ну. спецы по Т-СКЛ :) ? Или это 1С-ный прикол?
|
|||
3
Fedor-1971
18.07.16
✎
08:51
|
(0) IsNull(ВложенныйЗапрос.План,0) - для всех твоих сумм
и проверь в консоли запросов что возвращает выборка из скобок |
|||
4
toypaul
гуру
18.07.16
✎
08:52
|
(2) ну это без базара сделал. раз такая фигня.
а запрос без скобок говорю же ничего не возвращает. |
|||
5
toypaul
гуру
18.07.16
✎
08:52
|
(3) и кстати не так надо делать, а только так сработало
ЕстьNULL(Сумма(бла-бла),0) |
|||
6
Горогуля
18.07.16
✎
08:53
|
всё на месте:
ВЫБРАТЬ СУММА(ВложенныйЗапрос.План) КАК План, СУММА(ВложенныйЗапрос.Постановка) КАК Постановка, СУММА(ВложенныйЗапрос.Тестирование) КАК Тестирование ИЗ (ВЫБРАТЬ 0 КАК План, 0 КАК Постановка, 0 КАК Тестирование, "Постановки.Ссылка" КАК Ссылка ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 0, 0, 0, "Тестирование.Ссылка") КАК ВложенныйЗапрос |
|||
7
Fedor-1971
18.07.16
✎
08:54
|
(4)
ВЫБРАТЬ | Постановки.ТрудозатратыПлан КАК План, | Постановки.Трудозатраты КАК Постановка, | 0 КАК Тестирование, | Постановки.Ссылка КАК Ссылка | ИЗ | Постановки КАК Постановки | | ОБЪЕДИНИТЬ ВСЕ | | ВЫБРАТЬ | 0, | 0, | Тестирование.Трудозатраты, | Тестирование.Ссылка | ИЗ | Тестирование КАК Тестирование Вот это что возвращает? сколько строк? проверяй, иначе суммировать просто нечего |
|||
8
toypaul
гуру
18.07.16
✎
08:54
|
(7) НИ ЧЕ ГО
|
|||
9
toypaul
гуру
18.07.16
✎
08:55
|
(6) олё. меня слышно или как?
|
|||
10
Fedor-1971
18.07.16
✎
08:56
|
(8) Сумма НИЧЕГО чем отличается от Null?
|
|||
11
toypaul
гуру
18.07.16
✎
08:56
|
видимо это прикол Т-СКЛ такой что ли ... если суммировать "НИЧЕГО", то возвращает в одной строке НУЛЛ.
|
|||
12
toypaul
гуру
18.07.16
✎
08:57
|
(10) как бэ логичнее вернуть нисколько строк. чем такая подстава. нет?
|
|||
13
Горогуля
18.07.16
✎
08:57
|
(9) кто здесь?
|
|||
14
Горогуля
18.07.16
✎
08:58
|
(12) агрегатная функция, накладенная на нисколько строк, должна-таки вернуть результатом хоть что-то
|
|||
15
Fedor-1971
18.07.16
✎
09:04
|
(11) т.е. в "настоящем" SQL ничего не вернётся? А вот это уже подстава - не понятно отработала функция или нет, была пустая выборка или глюк вычисления суммы.
|
|||
16
В тылу врага
18.07.16
✎
09:07
|
(11) это документированное поведение SQL
|
|||
17
toypaul
гуру
18.07.16
✎
09:12
|
(16) ясно
|
|||
18
aleks_default
18.07.16
✎
10:00
|
(16) +1
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |