Встречается на собеседованиях • сегодня
Работал ли с WITH в PostgreSQL
Да, работал. WITH в PostgreSQL используется для создания временных таблиц (CTE — Common Table Expressions), которые существуют только во время выполнения запроса. Это удобно для структурирования сложных запросов, рекурсивных запросов и улучшения читаемости.
Пример простого CTE:
sql
WITH recent_orders AS (
SELECT * FROM orders WHERE order_date > NOW() - INTERVAL '30 days'
)
SELECT * FROM recent_orders WHERE total_amount > 1000;Рекурсивный пример (например, для иерархии):
sql
WITH RECURSIVE employee_hierarchy AS (
SELECT id, name, manager_id FROM employees WHERE id = 1
UNION ALL
SELECT e.id, e.name, e.manager_id
FROM employees e
JOIN employee_hierarchy eh ON e.manager_id = eh.id
)
SELECT * FROM employee_hierarchy;CTE можно использовать в SELECT, INSERT, UPDATE, DELETE. Они выполняются один раз и могут ссылаться на себя (с RECURSIVE).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы