Продвинутый
В чем разница между временной таблицей (Temp Table) и CTE (WITH)?
CTE (Common Table Expression):
- Существует только в рамках одного запроса.
- Не сохраняется на диск (живет в памяти во время выполнения).
- Идеально для рекурсии и улучшения читаемости сложных
SELECT.
Временная таблица (Temporary Table):
- Существует в рамках всей сессии (пока вы не отключитесь от БД).
- Физически создается на диске (или в RAM), на нее можно повесить индексы.
- Идеально для сложных многошаговых расчетов (ETL), когда промежуточный результат нужно использовать в 10 разных запросах подряд.