Предположим, что у меня есть 2 таблицы:SQL Server 2008 Сохранение строк из таблицы со значениями несовпадающих из другой таблицы
FRUITS RECIPE
----------- -----------------
id name ver id1 id2
----------- -----------------
1 apple 1 1 1
2 banana 2 null 3
3 orange 3 3 3
4 peach 4 4 2
5 1 null
6 null null
Для того, чтобы вернуть имена для ID1 и ID2 значений Я пробовал:
SELECT ver, id1, F1.name, id2, F2.name
FROM RECIPE INNER JOIN FRUITS AS F1 ON id1 = F1.name
INNER JOIN FRUITS AS F2 ON id2 = F2.name
, которая возвращает:
------------------------------------
ver id1 name id2 name
------------------------------------
1 1 apple 1 apple
3 3 orange 3 orange
4 4 peach 2 banana
Я хочу, чтобы результирующий набор включает в себя все рецепте строку, включая нули, как показано ниже:
------------------------------------
ver id1 name id2 name
------------------------------------
1 1 apple 1 apple
2 null null 3 orange
3 3 orange 3 orange
4 4 peach 2 banana
5 1 apple null null
6 null null null null
Спасибо за вашу помощь ...
Используйте LEFT JOIN вместо INNER JOIN. –
@KamilG. Вау! Великий человек ... Я пропустил это. Хорошо оценено. Благодарю. – Tres