Встречается на собеседованиях • сегодня
Как при двух таблицах в SQL найти пользователей у которых нет соответствующей записи во второй таблице
Для поиска пользователей без соответствующих записей во второй таблице можно использовать LEFT JOIN с проверкой на NULL или NOT EXISTS.
Вариант с LEFT JOIN:
sql
SELECT a.*
FROM table_a a
LEFT JOIN table_b b ON a.id = b.user_id
WHERE b.user_id IS NULL;Вариант с NOT EXISTS:
sql
SELECT a.*
FROM table_a a
WHERE NOT EXISTS (
SELECT 1 FROM table_b b
WHERE b.user_id = a.id
);Оба запроса вернут записи из table_a, для которых нет соответствий в table_b. NOT EXISTS часто работает эффективнее для больших таблиц, так как прекращает поиск после первого совпадения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы