Как сделать сравнение / вычитать записи - PullRequest
0 голосов
/ 18 марта 2020

Таблица A с 20 записями и таблица B с 19 записями. Как найти ту запись, которая отсутствует в таблице B. Как сравнить / вычесть записи этих двух таблиц; чтобы найти эту одну запись. Выполнение запроса в Apache Superset.

1 Ответ

0 голосов
/ 18 марта 2020

Точный ответ зависит от того, какие столбцы определяют одинаковые две записи. Предполагая, что вы хотите использовать какой-то столбец первичного ключа для сравнения, вы можете попробовать:

SELECT a.*
FROM TableA a
WHERE NOT EXISTS (SELECT 1 FROM TableB b WHERE b.pk = a.pk);

Если вы хотите использовать более одного столбца для сравнения записей из двух таблиц, тогда вы просто добавите logi c в предложение о существовании, например, для трех столбцов:

WHERE NOT EXISTS (SELECT 1 FROM TableB b WHERE b.col1 = a.col1 AND
                                               b.col2 = a.col2 AND
                                               b.col3 = a.col3)
...