0
tempaccount
04.04.14
✎
11:18
|
Доброго времени суток!
Сразу прошу прощения за ужасный топик.
Возможно-ли в запросе дублировать строки, при выполнении некого условия, но изменить всего одно поле в дублированной строке.
Пример:
Есть номенклатура, ее план и факт. В номенклатуре некий реквизит, (допустим) статус.
Запрос:
Для номенклатуры, если факт больше плана, то продублировать эту строку, и изменить в ней статус, т.е.:
Номенклатура План Факт Статус
х1 100 110 Статус1
Превращается в
Номенклатура План Факт Статус
х1 100 110 Статус1
х1 100 110 ФактБольше
Я предполагаю, что в запросе выполнить такое невозможно, НО, возможно ли результат запроса обойти, и в зависимости от сравнений, дабовлять в результат.
Заранее спасибо, объяснил как смог!
(Не посчитайте меня грубым, мне придется отойти на какое-то время)
|
|
4
DarKySiK
04.04.14
✎
11:37
|
ВЫБРАТЬ
"Номенклатура1" КАК Номенклатура,
100 КАК План,
110 КАК Факт,
"Статус1" КАК Статус
ПОМЕСТИТЬ ВТ_ОбщаяИнформация
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
"Номенклатура2",
130,
120,
"Статус2"
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВТ_ОбщаяИнформация.Номенклатура,
ВТ_ОбщаяИнформация.План,
ВТ_ОбщаяИнформация.Факт,
ВТ_ОбщаяИнформация.Статус
ИЗ
ВТ_ОбщаяИнформация КАК ВТ_ОбщаяИнформация
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ВТ_ОбщаяИнформация.Номенклатура,
ВТ_ОбщаяИнформация.План,
ВТ_ОбщаяИнформация.Факт,
"Факт больше"
ИЗ
ВТ_ОбщаяИнформация КАК ВТ_ОбщаяИнформация
ГДЕ
ВТ_ОбщаяИнформация.Факт > ВТ_ОбщаяИнформация.План
|
|
6
tempaccount
04.04.14
✎
15:26
|
Да, тоже рассматриваю вариант с левым соединением! Спасибо.
Просто интересно, возможно ли в выполненный запрос, ручками вставлять строки?
|
|