У меня маленькая проблема.
Я использую полное внешнее соединение на сервере Sql - пока все работает
но теперь я добавляю таблицу, и она не работает должным образом.
Вот мой код:
SELECT *
FROM Table1 h , (db1..Table2 s FULL OUTER JOIN db1..Table3 k
on k.attributT3_1 = s.attributT2_1
and left(k.attributT3_2,4) = year(s.attributT2_2)
and substring(k.attributT3_2,6,1) = s.attributT2_2
and (case when k.attributT3_3 = 0 and k.attributT3_4 = 11 then 10
when k.attributT3_3 = 0 and k.attributT3_4 = 14 then 40
when k.attributT3_3 = 0 and k.attributT3_4 = 16 then 60
when k.attributT3_3 = 0 and k.attributT3_4 = 90 then 10
when k.attributT3_3 = 1 and k.attributT3_4 = 11 then 11
when k.attributT3_3 = 2 and k.attributT3_4 = 11 then 12
when k.attributT3_3 = 4 and k.attributT3_4 = 11 then 14
when k.attributT3_3 = 7 and k.attributT3_4 = 11 then 17
else k.attributT3_3 end) = s.attributT2_3)
where h.attributT1_1 = k.attributT3_1
and s.attributT3_1 = ' 260585'
and h.attributT1_2 = 055
Это мой SQL, может немного запутать ^^
Моя проблема здесь в том, что FULL OUTER JOIN не работает, потому что я добавил Table1, потому что мне нужна некоторая информация, и теперь FULL OUTER JOIN работает как LEFT OUTER JOIN.
Также возможно, что мне нужно добавить одну или две таблицы в этом ПОЛНОМ НАЪЕМЕ.
У кого-нибудь есть идеи, как мне заставить его работать?
(и да, я знаю, что мог бы использовать 2 левых внешних соединения и объединение и заставить его работать, но это не то, что я хочу сделать)
Кстати, скрипт также может работать на Oracle: D
вывод должен быть таким:
http://img402.imageshack.us/img402/4618/bildwq.jpg
Столбец1 = Таблица1
Столбец2 = Таблица2
Столбец3 = Таблица3
нулевые значения не существуют в таблице
мой скрипт делает то же самое, за исключением того, что вы не можете видеть строки в столбце 2 с нулями