Присоединяйтесь к двум таблицам, у которых есть запись - PullRequest
0 голосов
/ 24 июня 2011

Мне нужно объединить две таблицы с общим идентификатором, но я хочу только вернуть строку, если обе таблицы содержат строку.Я нашел решение с подзапросами, но хочу избежать их (поскольку этот запрос выполняется несколько раз при загрузке страницы).

Пример:

`Products`:
Name    PicID
------|-------
Test1 |   4
Test2 |   5


`Images`:
PicID   Picture
------|--------
   4  |  BLOB

Запрос будет возвращать толькоTest1 (с блобом), потому что Test2 не имеет строки в таблице изображений.

Мысли?
Макс

Ответы [ 3 ]

5 голосов
/ 24 июня 2011

INNER JOIN используется для гарантии того, что совпадающие значения существуют в обеих таблицах.

SELECT p.PicID, p.Name, i.Picture
    FROM Products p
        INNER JOIN Images i
            ON p.PicID = i.PicID
2 голосов
/ 24 июня 2011
SELECT P.Name, P.PicID, I.Picture
FROM Products P
INNER JOIN Images I
ON p.PicID = I.PicID
1 голос
/ 24 июня 2011
Select * 
FROM Products, Images
WHERE Product.PicID = Images.PicID
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...