|
Количество дней работы. Подскажите как сделать вложенный запрос. | ☑ | ||
---|---|---|---|---|
0
msas
02.09.11
✎
00:07
|
Добрый день есть громоздкий отчет, который считает километры, литры ГСМ, часы работы автомобиля. В том числе он должен выдать количество дней работы автомобиля за период. Однако все осложняется тем, что за один рабочий день по автомобилю может быть несколько записей в оборотном регистре. Детализация в выводимом отчете нужна до каждого действия. Помогите с вариантом как оформить это в одном запросе. Варианты перебора результата запроса не принимаются. Ниже приведены нерабочие варианты. Скорее всего нужен отдельный подзапрос для такой выборки как его сделать ума не приложу. Желательно чтобы, каждое действие за сутки одного автомобиля составляло равную или пропорциональную долю времени автомобиля на линии.
Пример: Автомобиль1 12 часов -- 1 рабочий день 01.08 -- действие 1 -- 4 часа -- 0,33 рабочих дня 01.08 -- действие 2 -- 3 часа -- 0,25 рабочих дня 01.08 -- действие 3 -- 5 часа -- 0,42 рабочих дня "ВЫБРАТЬ | уатОборотыПоПЛ.Регистратор.Номер, | уатОборотыПоПЛ.Регистратор.Дата КАК ДатаВыписки, | уатОборотыПоПЛ.Заказ КАК Заказ, | уатОборотыПоПЛ.Заказ КАК ТС, | уатОборотыПоПЛ.Водитель1, | ВЫБОР КОГДА КОЛИЧЕСТВО(уатОборотыПоПЛ.Регистратор.Дата) > 0 | ТОГДА 1/КОЛИЧЕСТВО(уатОборотыПоПЛ.Регистратор.Дата) | ИНАЧЕ 0 | КОНЕЦ КАК КоличествоДней, | СУММА(уатОборотыПоПЛ.КоличествоЧасов) КАК КоличествоЧасов, //| СУММА(ВЫБОР КОГДА уатОборотыПоПЛ.КоличествоРейсов > 0 //| ТОГДА 1 //| ИНАЧЕ 0 //| КОНЕЦ) КАК КоличествоДней, |ИЗ |ГДЕ | уатОборотыПоПЛ.Период МЕЖДУ &ДатаНач И &ДатаКон | И уатОборотыПоПЛ.ТС <> &ПустоеТС | |СГРУППИРОВАТЬ ПО | уатОборотыПоПЛ.ТС, | уатОборотыПоПЛ.Заказ, | уатОборотыПоПЛ.Регистратор.Номер, | уатОборотыПоПЛ.Регистратор.ДатаВыезда, | уатОборотыПоПЛ.Водитель1, |УПОРЯДОЧИТЬ ПО | ТС, | ДатаВыписки |ИТОГИ | СУММА(КоличествоЧасов), | СУММА(КоличествоДней) |ПО | Заказ, | ТС | "; |
|||
1
msas
02.09.11
✎
00:37
|
up
|
|||
2
МихаилМ
02.09.11
✎
01:40
|
в 1 вт выберите данные
в 2 вт сверните в результирующий запрос детальные поделите на агрегатные а вообще болезнь одинесника detected: путаете получение данных с представлением. |
|||
3
msas
02.09.11
✎
02:30
|
не совсем понял, что означает 1 вт и 2 вт
|
|||
4
maip1
02.09.11
✎
02:32
|
Временные таблицы )
|
|||
5
msas
02.09.11
✎
02:56
|
(3,4) Подробнее можете самый простой пример.
|
|||
6
maip1
02.09.11
✎
03:49
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |