>_ IzzyLab

Практическое задание

PostgreSQL: представление (VIEW)

средне

В базе shop создай представление customer_totals с колонками name и total — сумма заказов клиента (только клиенты, у которых есть заказы).

Что потренируешь:
  • view
  • представление
  • join
  • group by
  • postgresql

Разбор темы

Представление (VIEW) — сохранённый в базе запрос, к которому обращаются как к обычной таблице. В отличие от материализованного, данные оно не хранит: при каждом обращении Postgres заново выполняет исходный SELECT, что удобно, чтобы спрятать сложную логику за простым именем. Внутри такого представления обычно живёт агрегирующий запрос с JOIN и GROUP BY; обычное соединение само отсекает записи без пары, так что дополнительного фильтра для этого не нужно. Имена столбцов результата задают псевдонимами через AS, иначе агрегат получит служебное имя.

Что проверяется

  1. представление customer_totals создано
  2. VIEW возвращает верные суммы

Как это выглядит