Middle+
SQL-Aufgabe: Es gibt zwei Tabellen A und B mit Kundendaten. Wie wählt man Kunden aus Tabelle A aus, die nicht in Tabelle B sind?
sobes.tech KI
Antwort von AI
Чтобы выбрать клиентов из таблицы A, которых нет в таблице B, можно использовать SQL-запрос с оператором NOT IN, LEFT JOIN или NOT EXISTS.
Пример с NOT IN:
SELECT *
FROM A
WHERE client_id NOT IN (SELECT client_id FROM B);
Пример с LEFT JOIN:
SELECT A.*
FROM A
LEFT JOIN B ON A.client_id = B.client_id
WHERE B.client_id IS NULL;
Пример с NOT EXISTS:
SELECT *
FROM A
WHERE NOT EXISTS (
SELECT 1 FROM B WHERE B.client_id = A.client_id
);
Все три варианта выбирают клиентов из таблицы A, которых нет в таблице B, по полю client_id (предполагается, что это идентификатор клиента). Выбор конкретного варианта зависит от СУБД и предпочтений по производительности.