Sobes.tech
Back to questions
Junior — Middle
50

Можешь привести пример использования временной таблицы с помощью выражения общего табличного выражения (CTE) в SQL?

Companies where asked
Танто-С

Answer from AI

sobes.tech AI

Общее табличное выражение (CTE) позволяет определить временную именованную таблицу, которая существует только в рамках одного запроса. Это удобно для упрощения сложных запросов и повторного использования подзапросов.

Пример использования CTE для создания временной таблицы, которая выбирает пользователей с количеством заказов больше 5:

WITH FrequentCustomers AS (
    SELECT user_id, COUNT(*) AS orders_count
    FROM orders
    GROUP BY user_id
    HAVING COUNT(*) > 5
)
SELECT u.user_id, u.name, fc.orders_count
FROM users u
JOIN FrequentCustomers fc ON u.user_id = fc.user_id;

Здесь FrequentCustomers — временная таблица, которая содержит пользователей с более чем 5 заказами. Далее она используется в основном запросе для получения дополнительной информации о пользователях.