Sobes.tech
Back to questions
Junior — Middle
60

Объясните принцип использования выражений таблиц общего назначения (CTE) в SQL и их основное назначение.

Companies where asked
Effective Mobile

Answer from AI

sobes.tech AI

Выражения таблиц общего назначения (CTE, Common Table Expressions) в SQL — это временные именованные результаты запроса, которые можно использовать внутри основного SQL-запроса. Они объявляются с помощью ключевого слова WITH и позволяют разбивать сложные запросы на более понятные части.

Основное назначение CTE:

  • Улучшение читаемости и поддержки сложных запросов.
  • Возможность рекурсивных запросов (например, для обхода иерархий).
  • Повторное использование результата подзапроса внутри основного запроса.

Пример использования CTE:

WITH RecentOrders AS (
    SELECT OrderID, CustomerID, OrderDate
    FROM Orders
    WHERE OrderDate > '2024-01-01'
)
SELECT CustomerID, COUNT(OrderID) AS OrderCount
FROM RecentOrders
GROUP BY CustomerID;

В этом примере сначала создаётся временная таблица RecentOrders, а затем она используется для подсчёта количества заказов по каждому клиенту.