Как исправить SQL-запрос Left Join - PullRequest
1 голос
/ 02 мая 2019

У меня есть две следующие таблицы.Таблица A:

 Email            Phone
 A@gmail.com      1234
 B@gmail.com      2345
 C@gmail.com      4567
 D@gmail.com      5432
 E@gmail.com      4568

Таблица B:

 Email            LinkName
 A@gmail.com      X
 B@gmail.com      Y
 C@gmail.com      
 D@gmail.com      X
 B@gmail.com      X

Желаемый результат:

 Email           LinkName
 C@gmail.com     
 E@gmail.com  

Ниже приведен запрос, который я пробовал.Пожалуйста, дайте мне знать, это правильно:

   Select Email from Table A
     Left join  Table B
     on A.Email = B.Email
     where C.LinkName is null

1 Ответ

1 голос
/ 02 мая 2019

Нет, C.LinkName у вас нет таблицы C

SELECT
A.Email
FROM TABLE A
LEFT JOIN TABLE B
     ON A.Email = B.Email
     WHERE B.LinkName IS NULL

Это правильная таблица, LinkName - это столбец B, поэтому вы должны изменить ее в выражении WHERE

Если вы хотите столбец LinkName (как в желаемом выводе), вы должны добавить B.LinkName в ваш SELECT, но он будет заполнен только значениями NULL

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...