BBO001 Ответов: 1

Как использовать, не существует &амп; союз всех одновременно?


поэтому я хочу соединить две мои таблицы вместе и результат должен быть таким если таблица А существует то выберите таблицу а еще таблицу Б

Что я уже пробовал:

Select 
      id, 
      name,
      age

FROM TableA as a
WHERE NOT EXISTS ( SELECT * FROM TableB WHERE a.id = b.id)

UNION ALL

Select 
      id, 
      name,
      age

FROM TableB as b;


это правильный путь, чтобы использовать не EXISITS и "объединить все"?

1 Ответов

Рейтинг:
2

Richard Deeming

Цитата:
если таблица существует, то выбрать стол в другой таблице B
Код, который вы показали, будет делать обратное - он будет возвращать запись из таблицы а только в том случае, если в таблице В нет соответствующей записи.

Попробуйте что-нибудь вроде этого:
SELECT
    id,
    name,
    age
FROM
    TableA

UNION ALL

SELECT
    id,
    name,
    age
FROM
    TableB As b
WHERE
    NOT EXISTS
    (
        SELECT *
        FROM TableA As a
        WHERE a.id = b.id
    )
;