|
Объединение запросов, чтобы в каждом были итоги | ☑ | ||
---|---|---|---|---|
0
alexio_alexio
02.10.16
✎
13:21
|
Можно ли как-то написать в одном запросе объединение запросов, чтобы в каждом из запросов была своя секция итогов? Поясню на примере: надо получить количество и стоимость в рядом стоящих строках по складам и номенклатуре из РН "Товары на складах" (тут берем количество) и "Партии товаров на складах" (тут берем стоимость), причем итоги тоже надо считать отдельно по количеству и стоимости. Вот примерный (неправильный, т.к. в объединении запросов итоги следуют для результата объединения) код:
ВЫБРАТЬ ТоварыНаСкладахОбороты.Склад КАК Склад, ТоварыНаСкладахОбороты.Номенклатура КАК Номенклатура, ТоварыНаСкладахОбороты.КоличествоОборот КАК КоличествоОборот, ТоварыНаСкладахОбороты.КоличествоПриход КАК КоличествоПриход, ТоварыНаСкладахОбороты.КоличествоРасход КАК КоличествоРасход ИЗ РегистрНакопления.ТоварыНаСкладах.Обороты КАК ТоварыНаСкладахОбороты ИТОГИ СУММА(КоличествоОборот), СУММА(КоличествоПриход), СУММА(КоличествоРасход) ПО ОБЩИЕ, Склад ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПартииТоваровНаСкладахОбороты.Склад, ПартииТоваровНаСкладахОбороты.Номенклатура, ПартииТоваровНаСкладахОбороты.СтоимостьОборот, ПартииТоваровНаСкладахОбороты.СтоимостьПриход, ПартииТоваровНаСкладахОбороты.СтоимостьРасход ИЗ РегистрНакопления.ПартииТоваровНаСкладах.Обороты КАК ПартииТоваровНаСкладахОбороты ИТОГИ СУММА(СтоимостьОборот), СУММА(СтоимостьПриход), СУММА(СтоимостьРасход) ПО ОБЩИЕ, Склад Если использовать вирт. таблицы или вложенные запросы тоже вроде не получается нужное или я не прав? Конечно же приходит на ум выгрузить каждый из запросов в ТЗ и потом работать с ней. Но может есть возможность записать в одном запросе нужное без использования ТЗ? |
|||
1
alexio_alexio
02.10.16
✎
13:22
|
(0) ТЗ-таблица значений
|
|||
2
DailyLookingOnA Sunse
02.10.16
✎
13:48
|
Это надо?
ИТОГИ СУММА(КоличествоОборот), СУММА(КоличествоПриход), СУММА(КоличествоРасход) 0, 0, 0 ОБЪЕДИНИТЬ ВСЕ ИТОГИ 0, 0, 0, СУММА(СтоимостьОборот), СУММА(СтоимостьПриход), СУММА(СтоимостьРасход) |
|||
3
DailyLookingOnA Sunse
02.10.16
✎
13:49
|
Ну и объединение завернуть во вложенный запрос или временную таблицу и сгруппировать.
|
|||
4
vvp91
02.10.16
✎
13:53
|
Вариант 1:
Вариант 2:
|
|||
5
alexio_alexio
02.10.16
✎
14:03
|
(4) вариант 1: но получаем же 6 количественно-суммовых столбцов вместо нужных 3-х?
|
|||
6
alexio_alexio
02.10.16
✎
14:04
|
(5) т.е. получаете полное соединение
|
|||
7
vvp91
02.10.16
✎
14:10
|
(6) Какое "полное соединение"?
Матчасть здесь - https://ru.wikipedia.org/wiki/Join_(SQL)#FULL_OUTER_JOIN |
|||
8
alexio_alexio
02.10.16
✎
14:16
|
(4) вариант 2: вот за это спасибо, где почитать про конструкцию:
ВЫБРАТЬ ... "КОЛИЧЕСТВО" КАК ТипИтогов, ... ПО ... ТипИтогов ? |
|||
9
mistеr
02.10.16
✎
14:18
|
(0) Объединение выполняется в базе, итоги считаются после этого в платформе. Вопрос исчерпан?
Осваивай СКД и считай что угодно и как угодно. |
|||
10
alexio_alexio
02.10.16
✎
14:19
|
(4) вариант 2: вот за это спасибо, где почитать про конструкцию:
? |
|||
11
alexio_alexio
02.10.16
✎
14:20
|
(9) дорабатываю отчет на базе универсального
|
|||
12
alexio_alexio
02.10.16
✎
14:25
|
(10) хотя вроде понял, это просто искусственное добавление поля, чтобы потом удобно использовать в итогах?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |