У меня есть соотношение 1:1 между двумя таблицами. Я хочу найти все строки в таблице A, которые не имеют соответствующей строки в таблице B. Я использую этот запрос:
SELECT id
FROM tableA
WHERE id NOT IN (SELECT id
FROM tableB)
ORDER BY id desc
id - первичный ключ в обеих таблицах. Помимо индексов первичного ключа, у меня также есть индекс на tableA (id desc).
Используя H2 (встроенная Java-база данных), это приводит к полному сканированию таблицы tableB. Я хочу избежать полного сканирования таблицы.
Как я могу переписать этот запрос для быстрого запуска? Какой индекс я должен использовать?