Как обратиться напрямую к sql-выборке, полученной через JOIN?

Есть запрос:

SELECT (book.amount+supply.amount) AS Количество
FROM book INNER JOIN supply USING (author_id)

Cуществует ли возможность как-то обратиться по имени к выборке, созданной JOIN'ом? Грубо говоря, хочу вместо

SELECT (book.amount+supply.amount) AS Количество

написать что-то вроде

SELECT (SUM(Таблица_Созданная_Выборкой_Через_JOIN.amount) ) AS Количество

Вероятно, вопрос крайне тривиальный, но я только начинаю знакомиться с SQL.

Заранее спасибо!

p.s. может показаться некорректным замена book.amount+supply.amount на SUM(amount), но в контексте таблицы, с которой я имею дело - оно имеет место. Вопрос именно в том, как обратиться к выборке ?


Ответы (1 шт):

Автор решения: Герман Борисов

Большинство SQL-серверов поддерживают вложенные подзапросы

SELECT (SUM(Таблица_Созданная_Выборкой_Через_JOIN.amount) ) AS Количество
FROM (
  SELECT (book.amount+supply.amount) AS amount
  FROM book INNER JOIN supply USING (author_id)
) AS Таблица_Созданная_Выборкой_Через_JOIN

Также если вам нужно один и тот же подзапрос использовать часто, в разных запросах, то можно создать представление (VIEW). Синтаксис сильно зависит от используемой СУБД, подробности смотрите в справке.

→ Ссылка