Sobes.tech
Middle
24

Как получить значения из одной таблицы, которых нет в другой в SQL?

Компании, где спрашивали
ИннотехИннотех

Ответ от нейросети

sobes.tech AI

Чтобы получить значения из одной таблицы, которых нет в другой, в SQL обычно используют конструкцию с LEFT JOIN и проверкой на NULL или оператор NOT EXISTS.

Пример с LEFT JOIN:

SELECT t1.*
FROM table1 t1
LEFT JOIN table2 t2 ON t1.id = t2.id
WHERE t2.id IS NULL;

Здесь выбираются все записи из table1, для которых нет соответствующих записей в table2.

Пример с NOT EXISTS:

SELECT *
FROM table1 t1
WHERE NOT EXISTS (
  SELECT 1
  FROM table2 t2
  WHERE t2.id = t1.id
);

Оба варианта эффективны, выбор зависит от конкретной СУБД и ситуации.