@zlodiak

Почему не срабатывает left join?

есть код:
CREATE TABLE NAMES(pk integer PRIMARY KEY, Name text);
CREATE TABLE CITIES(fk integer, Name text);

INSERT INTO NAMES VALUES(1,'Tom');
INSERT INTO NAMES VALUES(2,'Lucy');
INSERT INTO NAMES VALUES(3,'Frank');

INSERT INTO CITIES VALUES(1,'Moscow');
INSERT INTO CITIES VALUES(3,'Saransk');
INSERT INTO CITIES VALUES(4,'Penza');
INSERT INTO CITIES VALUES(1,'Samara');

SELECT * FROM NAMES LEFT JOIN CITIES WHERE pk = fk


как я понимаю, в выборке должны присутствовать записи с NULL потому что для name.lucy не выполняется условие where. проблема в том, что сервис не выводит эти значения с NULL.

1|Tom|1|Moscow
1|Tom|1|Samara
3|Frank|3|Saransk


Скажите пожалуйста, тут дело в особенности реализации sql конкретно в этом сервисе или я не понимаю как работает left join?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
flapflapjack
@flapflapjack
на треть я прав
Во-первых LEFT JOIN Cities ON citiec.fk=Names.pk

Во-вторых странные у вас таблицы, в таблице Cities примари кей где?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы