Занятие 26. Табличные выражения
⚡ Кратко: суть темы
CTE (Common Table Expression) — это именованный временный набор строк, который объявляется через WITH и используется внутри одного запроса. CTE делают сложные запросы читаемее и позволяют повторно использовать промежуточную логику.
- CTE объявляется один раз и доступен только в рамках следующего за ним
SELECT. - Удобны для замены подзапросов в
FROMиWHERE. - При выборе между CTE и подзапросом приоритет отдаётся читаемости.
Что запомнить: CTE начинается с WITH имя AS (SELECT ...) и не сохраняется между запросами.
Частая ошибка: использовать имя CTE как таблицу без повторного SELECT внутри условия, например WHERE id IN cte_name.
📖 О чём это занятие
Табличные выражения (Common Table Expressions, CTE) — это способ вынести вспомогательный SELECT в именованный блок. В отличие от анонимного подзапроса, CTE получает имя, к которому можно обращаться несколько раз. Это особенно полезно, когда запрос разрастается и его нужно разбить на логические шаги.