Встречается на собеседованиях • сегодня
Что такое Common Table Expressions (CTE) в SQL
CTE (Common Table Expressions) — это временные результирующие наборы, которые можно использовать в рамках выполнения одного SQL-запроса. Они улучшают читаемость и структурируют сложные запросы.
Особенности:
- Определяются с помощью
WITH - Существуют только во время выполнения запроса
- Могут быть рекурсивными
- Могут ссылаться на другие CTE в том же запросе
Пример:
sql
WITH department_stats AS (
SELECT department_id, COUNT(*) as emp_count
FROM employees
GROUP BY department_id
)
SELECT d.department_name, ds.emp_count
FROM departments d
JOIN department_stats ds ON d.department_id = ds.department_id
WHERE ds.emp_count > 10;Рекурсивный CTE:
sql
WITH RECURSIVE hierarchy AS (
SELECT id, name, parent_id, 1 AS level
FROM categories
WHERE parent_id IS NULL
UNION ALL
SELECT c.id, c.name, c.parent_id, h.level + 1
FROM categories c
JOIN hierarchy h ON c.parent_id = h.id
)
SELECT * FROM hierarchy;
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы