Встречается на собеседованиях • сегодня
Как посчитать записи в одной таблице не связанные с другой таблицей
Для подсчёта записей в таблице A, не связанных с таблицей B, можно использовать SQL-запрос с LEFT JOIN и проверкой на NULL в связанной таблице:
sql
SELECT COUNT(*)
FROM table_a a
LEFT JOIN table_b b ON a.id = b.a_id
WHERE b.a_id IS NULL;Или с подзапросом и NOT IN:
sql
SELECT COUNT(*)
FROM table_a
WHERE id NOT IN (SELECT a_id FROM table_b);В JPA/Hibernate это можно реализовать через Criteria API или JPQL:
java
// JPQL вариант
Long count = entityManager.createQuery(
"SELECT COUNT(a) FROM TableA a WHERE a.id NOT IN (SELECT b.aId FROM TableB b)",
Long.class
).getSingleResult();
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы