Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выборка данные из нескольких таблиц  [new]
Lerain
Member

Откуда:
Сообщений: 10
Здравствуйте. У меня есть три таблицы:

GNK
idnkartndokName
12345 256 111 Alex
12346 123 222 Mike

GIKO
idSprID
12345 1

Spravochnik
SprIDBuro
1 33
2 34

Делаю такой запрос:
SELECT GNK.nkart, GNK.ndok, GNK.Name, Spravochnik.buro from GNK, giko, Spravochnik
WHERE GNK.id = 12346 AND Spravochnik.SprID = GIKO.SprID AND GNK.id = GIKO.id;

но если данные отсутствуют в таблицах GIKO и Spravochnik он ничего не возвращает. Как сделать так чтобы он все равно возвращал строку из таблицы GNK?
9 сен 13, 19:10    [14816071]     Ответить | Цитировать Сообщить модератору
 Re: Выборка данные из нескольких таблиц  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31983
Lerain
Делаю такой запрос:
SELECT GNK.nkart, GNK.ndok, GNK.Name, Spravochnik.buro from GNK, giko, Spravochnik
WHERE GNK.id = 12346 AND Spravochnik.SprID = GIKO.SprID AND GNK.id = GIKO.id;


но если данные отсутствуют в таблицах GIKO и Spravochnik он ничего не возвращает. Как сделать так чтобы он все равно возвращал строку из таблицы GNK?
Откройте для себя LEFT JOIN

SELECT GNK.nkart, GNK.ndok, GNK.Name, Spravochnik.buro 
from GNK
	LEFT JOIN GIKO on GIKO.id = GNK.id
	LEFT JOIN Spravochnik on Spravochnik.SprID = GIKO.SprID
WHERE GNK.id = 12346;
9 сен 13, 19:21    [14816139]     Ответить | Цитировать Сообщить модератору
 Re: Выборка данные из нескольких таблиц  [new]
Lerain
Member

Откуда:
Сообщений: 10
спасибо
9 сен 13, 21:17    [14816580]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить