Простой T-SQL Join вопрос - PullRequest
2 голосов
/ 05 декабря 2008

Я пытаюсь выбрать запись из таблицы1, присоединившись к таблице2 и используя столбцы таблицы2 в операторе WHERE. Col1 и Col2 в таблице1 могут храниться в столбце таблицы1. Мне нужно объединить col1 таблицы2 со значением col1 или col2 в таблице1

вот SQL-оператор, который я создал так (псевдо):

SELECT
   t1.Col1,
   t1.Col2,
   t1.Col3,
   t1.Col4
FROM
   table1 t1
JOIN table2 t2 on t2.Col1 = t1.Col1 or t2.Col1 = t1.Col2

Как лучше всего подойти к этому?

Ответы [ 2 ]

5 голосов
/ 05 декабря 2008

Это должно быть хорошо. Другой способ написать такое же условие выглядит следующим образом:

... JOIN table2 t2 on t2.Col1 IN (t1.Col1, t1.Col2)

Не имеет значения, каким образом вы это делаете в этом случае. Делайте то, что вы считаете более читабельным.

0 голосов
/ 05 декабря 2008

Если я правильно понимаю ваш вопрос, ваш SQL-запрос в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...