Что такое CTE запрос

Python Middle Без компании
Что такое CTE запрос
Ответы
CTE (Common Table Expression) — это временный результат запроса, который можно использовать в последующих SQL-запросах. В Python CTE часто применяют с библиотеками типа SQLAlchemy или напрямую в SQL-запросах через `WITH`. **Пример с SQLAlchemy:** ``` from sqlalchemy import select, text # CTE запрос через SQLAlchemy cte = select(User).where(User.age > 18).cte("adult_users") query = select(cte).where(cte.c.name.like("%A%")) ``` **Пример чистого SQL:** ``` WITH recent_orders AS ( SELECT * FROM orders WHERE order_date > '2023-01-01' ) SELECT * FROM recent_orders WHERE total > 100; ``` **Плюсы CTE:** - Улучшает читаемость сложных запросов. - Позволяет рекурсивные запросы (например, для деревьев). - Временный результат можно переиспользовать в одном запросе. CTE выполняется только при использовании в основном запросе, не сохраняется в БД.