Требуется помощь в написании запроса

У меня есть 2 таблицы Table_A и Table_B. Table_A является родительским элементом Table_B. Table_B имеет 2 столбца, которые относятся к Table_A (я имею в виду, что оба столбца относятся к столбцу в родительском).

Таблица_A содержит следующие столбцы (идентификатор, имя, имя класса) Таблица_B содержит следующий столбец (источник, назначение), оба столбца относятся к идентификатору в таблице_A

Предположим, что Таблица_A содержит следующие данные

id     name    className 
---------------------------
1       N1      C1 
2       N2      C2
3       N3      C3
4       N4      C4
5       N5      C6

Table_B

Source  Destination
------------------
1        2
2        3
3        4
3        5

Мне нужен запрос, в котором мне нужны все идентификаторы, присутствующие в пункте назначения, а не в источнике, и мне нужно объединить эти идентификаторы с Table_A , чтобы получить имя и имя класса.

Для данных, которые я показал, запрос должен получить следующие строки.

4     N4   C4
5     N5   C5

Кстати, здесь я показал частичные данные, но Table_B содержит более 1000 записей.

РЕДАКТИРОВАТЬ

Я написал следующий запрос, но он показал неверные результаты

select * from Table_A where id not in (select distinct Source from Table_B)

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

5
задан Lukas Eder 24 October 2011 в 10:23
поделиться