2013-03-21 2 views
1

Конечно, обрушившиеся обрушились.LEFT OUTER JOIN + RIGHT OUTER JOIN так же, как FULL OUTER JOIN?

Мне нужно сделать ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ в SQLite, и оно, похоже, не поддерживает его.

+0

Вы пытались обмануть, присоединившись к 1 = 1? –

+0

Это не тот же вопрос, что и http://stackoverflow.com/questions/1923259/full-outer-join-with-sqlite, потому что SQLite не имеет ПРАВИЛЬНОГО ВНЕШНЕГО ОБЪЕДИНЕНИЯ, и OP явно использует диалект, который _does_have RIGHT ВНЕШНЯЯ ВСТУПЛЕНИЕ. – dcorking

ответ

2

Попробуйте

Left Outer Join 

UNION 

Right Outer Join 

Они одинаковы.

+0

, вероятно, хотите объединить все. –

+3

@ DanBracuk: нет, отсутствие ALL на самом деле имеет решающее значение; если он отсутствует, строки «внутреннего соединения» появляются дважды в выходном файле. Ответы на вопрос «возможный дубликат» включают фильтр на одной из двух ветвей запроса UNION ALL, который специально исключает строки «внутреннего соединения» из этой части объединения. Условия фильтра не были представлены выше, поэтому UNION является правильным, и UNION ALL будет некорректным, пока не будет включен необходимый фильтр. –

+0

Обратите внимание, что SQLite также не поддерживает RIGHT JOIN. –