Как получить SQL-запрос для объединения двух таблиц - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть несколько вопросов по поводу SQL-запроса. У меня есть таблица CUSTOMER со следующими полями (имя, город):

Juan   New York
Louis  Madrid

И еще одна таблица под названием ASESOR со следующими полями (имя, город):

Michael   New York
Peter  Zurich
Dan   Madrid

Мне нужен запрос, который объединяет обе таблицы, где город одинаковый.

Ожидаемый результат :

Juan New York
Loius Madrid
Michael New York
Dan Madrid

Питер должен быть вне результатов.

Спасибо

1 Ответ

0 голосов
/ 10 сентября 2018

Вы можете использовать UNION ALL в сочетании с EXISTS:

SELECT name , city
FROM CUSTOMER c
WHERE EXISTS (SELECT 1 FROM ASESOR a WHERE c.city= a.city)
UNION ALL
SELECT name , city
FROM ASESOR a
WHERE EXISTS (SELECT 1 FROM CUSTOMER c WHERE c.city= a.city);

DBFiddle Demo

Выход:

┌──────────┬──────────┐
│  name    │   city   │
├──────────┼──────────┤
│ Juan     │ New York │
│ Louis    │ Madrid   │
│ Michael  │ New York │
│ Dan      │ Madrid   │
└──────────┴──────────┘
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...