Есть ли документация о том, когда или как часто выполняется оператор select при использовании его в сочетании с IN ?
Например:
Таблица Таблица чисел
Numbers
1
2
3
4
5
Таблица Таблица объектов
Objects | NumbersForObjects
Lawnmower | 4
Hammer | 2
Cheese | 12
Plant | 5
С помощью следующего запроса:
SELECT *
FROM ObjectsTable
WHERE ObjectsTable.NumbersForObjects IN (
SELECT Numbers
FROM NumbersTable
)
Подзапрос, который получает значения для оператора IN, выполняется каждый раз, когда оценивается новая строка? Или есть возможность сохранить его как в массиве, чтобы сэкономить время выполнения?
Возможно, сервер также более эффективен, чем мне кажется, и он уже такой же быстрый, как и реализация собственного массива. Если есть какая-то общая документация о том, как все реализовано в фоновом режиме, и кто-то не возражает поделиться этим, это также было бы очень кстати.