0
Melcor
20.04.18
✎
13:59
|
Доброго дня. есть запрос, необходимо посчитать количество сезонов где значение не равно 0, т.е.
СУММА_ВЕСНА_2014 = 0
СУММА_ОСЕНЬ_2014 = 0
СУММА_ВЕСНА_2015 = 500
СУММА_ВЕСНА_2016 = 700
Нужно получить КолвоСезонов = 2
ВЫБРАТЬ
ВложенныйЗапрос.Клиент,
ВложенныйЗапрос.ДокументСобытияСумма КАК ДокументСобытияСумма,
ВложенныйЗапрос.СУММА_ВЕСНА_2014,
ВложенныйЗапрос.СУММА_ОСЕНЬ_2014,
ВложенныйЗапрос.СУММА_ВЕСНА_2015,
ВложенныйЗапрос.СУММА_ОСЕНЬ_2015,
ВложенныйЗапрос.СУММА_ВЕСНА_2016,
ВложенныйЗапрос.СУММА_ОСЕНЬ_2016,
ВложенныйЗапрос.СУММА_ВЕСНА_2017,
ВложенныйЗапрос.СУММА_ОСЕНЬ_2017
ИЗ
(ВЫБРАТЬ
События.Клиент КАК Клиент,
СУММА(События.ДокументСобытия.Сумма) КАК ДокументСобытияСумма,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2014, 7, 1, 0, 0, 0) И ДАТАВРЕМЯ(2015, 1, 31, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ОСЕНЬ_2014,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2015, 2, 1, 0, 0, 0) И ДАТАВРЕМЯ(2015, 6, 30, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ВЕСНА_2015,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2015, 7, 1, 0, 0, 0) И ДАТАВРЕМЯ(2016, 1, 31, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ОСЕНЬ_2015,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2016, 2, 1, 0, 0, 0) И ДАТАВРЕМЯ(2016, 6, 30, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ВЕСНА_2016,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2016, 7, 1, 0, 0, 0) И ДАТАВРЕМЯ(2017, 1, 31, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ОСЕНЬ_2016,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2017, 2, 1, 0, 0, 0) И ДАТАВРЕМЯ(2017, 6, 30, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ВЕСНА_2017,
СУММА(ВЫБОР
КОГДА События.Период МЕЖДУ ДАТАВРЕМЯ(2017, 7, 1, 0, 0, 0) И ДАТАВРЕМЯ(2018, 1, 31, 23, 59, 59)
ТОГДА События.ДокументСобытия.Сумма
ИНАЧЕ 0
КОНЕЦ) КАК СУММА_ОСЕНЬ_2017
ИЗ
РегистрСведений.События КАК События
ЛЕВОЕ СОЕДИНЕНИЕ НенужныеРеализации КАК НенужныеРеализации
ПО События.ДокументСобытия = НенужныеРеализации.ДокументСобытияСсылка
ГДЕ
События.ГруппаСобытия = &Реализация
И События.ДокументСобытия.СерийныйНомер <> &ПустойСерНум
И НенужныеРеализации.ДокументСобытияСсылка ЕСТЬ NULL
СГРУППИРОВАТЬ ПО
События.Клиент) КАК ВложенныйЗапрос
УПОРЯДОЧИТЬ ПО
ДокументСобытияСумма УБЫВ
|
|