WITH
Выражение с WITH определяет временный набор данных, который доступен для ссылки на него в последующих запросах
WITH name_cte [(column_1 [, column_2 ] …)] AS (subquery)
name_cte
Название табличного выражения, по которому оно будет доступно
subquery
Подзапрос, результат которого можно будет использовать в других частях SQL запроса
Примеры
WITH Aeroflot_trips AS (
SELECT TRIP.*
FROM Company
INNER JOIN Trip ON Trip.company = Company.id
WHERE name = "Aeroflot"
)
SELECT plane,
COUNT(plane) AS amount
FROM Aeroflot_trips
GROUP BY plane;