table A(a_id)
table B (b_id)
table c(c_id , b_id, a_id);
select a.*, b.* , c*
from c join b
Я в замешательстве отсюда ???присоединение 3 стол sql
table A(a_id)
table B (b_id)
table c(c_id , b_id, a_id);
select a.*, b.* , c*
from c join b
Я в замешательстве отсюда ???присоединение 3 стол sql
Попробуйте это -
SELECT * FROM A
INNER JOIN C
ON A.a_id = C.a_id
INNER JOIN B
ON B.b_id = C.b_id;
SELECT a.*, b.*, c*
FROM c
LEFT JOIN b USING (b_id)
LEFT JOIN a USING (a_id);
Вы можете использовать INNER
, LEFT
, RIGHT
, FULL
... JOINS в следующем:
SELECT *
FROM A
LEFT JOIN B ON A.a_id = B.b_id
LEFT JOIN C ON B.b_id = C.c_id
Попробуйте
SELECT A.* from tableA A
LEFT JOIN tableC C ON C.a_id = A.a_id
LEFT JOIN tableB B ON C.b_id = B.b_id
Это единственный разумный ответ. Поскольку C является таблицей моста, кажется довольно очевидным, что запрос должен выбирать пары A/B. Ничто не указывает, что записи должны быть соединены по внешнему виду с A или C. –