![]() |
![]() |
![]() |
|
Прошу помощи с запросом | ☑ | ||
---|---|---|---|---|
0
live in sky dreams
09.09.13
✎
00:03
|
Помогите составить запрос.
Есть ТЗ_1, ТЗ_2 В ТЗ_1: Номенклатура_1 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 Номенклатура_2 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 Номенклатура_3 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 Номенклатура_4 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 Номенклатура_5 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 В ТЗ_2: Номенклатура_3 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 Номенклатура_5 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 В Результате нужно получить на выходе: Номенклатура_1 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 | ЗначениеБулево Номенклатура_2 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 | ЗначениеБулево Номенклатура_3 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 | ЗначениеБулево Номенклатура_4 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 | ЗначениеБулево Номенклатура_5 | НекоеЗначениеПоля1 | НекоеЗначениеПоля2 | ЗначениеБулево Где значение булево = "Эта Номенклатура присутствует в обеих таблицах" Чего то не догоню... Пока остановился на: ВЫБРАТЬ Номенклатура ПОМЕСТИТЬ В ВремТЗ ИЗ ТЗ_2; ВЫБРАТЬ Номенклатура, НекоеЗначениеПоля1, НекоеЗначениеПоля2, НекоеЗначениеПоля3, <ВОТ ТУТ КАК ОПИСАТЬ БУЛЕВО?> ИЗ ТЗ_1 |
|||
1
Нуф-Нуф
09.09.13
✎
00:05
|
Соедини! Будь мужиком, блеать!
|
|||
2
live in sky dreams
09.09.13
✎
00:08
|
Full join?
|
|||
3
live in sky dreams
09.09.13
✎
00:09
|
+(2)
Full Join + IsNull(...) это? |
|||
4
Нуф-Нуф
09.09.13
✎
00:22
|
Да
|
|||
5
live in sky dreams
09.09.13
✎
00:24
|
получилось что то вот:
ВЫБРАТЬ ЕстьNull(ТЗ_2.Номенклатура, ТЗ_1.Номенклатура) Номенклатура, ЕстьNull(ТЗ_2.НекоеЗначениеПоля1, ТЗ_1.НекоеЗначениеПоля1) КАК НекоеЗначениеПоля1, ЕстьNull(ТЗ_2.НекоеЗначениеПоля2, ТЗ_1.НекоеЗначениеПоля2) КАК НекоеЗначениеПоля2, ЕстьNull(ТЗ_2.НекоеЗначениеПоля3, ТЗ_1.НекоеЗначениеПоля3) КАК НекоеЗначениеПоля3, Выбор Когда (ТЗ_1.Номенклатура + ТЗ_2.Номенклатура) = NULL Тогда Ложь ИНАЧЕ Истина КАК НоменклатураВОбоихСписках ИЗ ТЗ_1 ПОЛНОЕ СОЕДИНЕНИЕ ТЗ_2 ПО ТЗ_2.Номенклатура = ТЗ_1.Номенклатура Вроде оно, не? |
|||
6
Нуф-Нуф
09.09.13
✎
00:27
|
Похоже
|
|||
7
live in sky dreams
09.09.13
✎
00:27
|
Спасибо!
|
|||
8
vicof
09.09.13
✎
07:24
|
А внутреннее соединение не судьба использовать?
|
|||
9
SeraFim
09.09.13
✎
07:44
|
(8) значение булево = "Эта Номенклатура присутствует в обеих таблицах"
при внутреннем будет везде ИСТИНА |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |