Здравствуйте!
Поддержка не сможет помочь с вопросами, связанными с теорией или задачам из курса «Системный аналитик» — в этой ситуации рекомендуем вам обратиться к вашему преподавателю в чате в Slack.
Если же у вас возникнут иные вопросы — обязательно пишите, будем рады помочь :)
WITH:WITH
-- назначение псевдонимов и формирование подзапросов
псевдоним_1 AS (подзапрос_1),
псевдоним_2 AS (подзапрос_2),
псевдоним_3 AS (подзапрос_3),
....
псевдоним_n AS (подзапрос_n)
SELECT -- основной запрос
-- внутри основного запроса работают с псевдонимами, которые назначили в WITH
FROM псевдоним_1 INNER JOIN псевдоним_2 ...
...
... WITH. rating);length), назовите поля min_length и max_length соответственно;length), назовите поле avg_length;rental_rate), назовите поля min_rental_rate, max_rental_rate, avg_rental_rate соответственно.WITH. invoice_month, year_2011, year_2012, year_2013. Поле month должно хранить месяц в виде числа от 1 до 12. invoice за 2012 и 2013 годы. В итоговую таблицу должны войти поля:month — номер месяца;sum_total_2012 — выручка за этот месяц в 2012 году;sum_total_2013 — выручка за этот месяц в 2013 году;perc — процент, который отображает, насколько изменилась месячная выручка в 2013 году по сравнению с 2012 годом.perc до ближайшего целого числа. Отсортируйте таблицу по значению в поле month от меньшего к большему.xxxxxxxxxxWITHyear2012 AS (SELECT EXTRACT(MONTH FROM CAST(invoice_date AS date)) AS m, SUM(total) AS total FROM invoice WHERE EXTRACT(YEAR FROM CAST(invoice_date AS date)) = 2012 GROUP BY EXTRACT(MONTH FROM CAST(invoice_date AS date))),year2013 AS (SELECT EXTRACT(MONTH FROM CAST(invoice_date AS date)) AS m, SUM(total) AS total FROM invoice WHERE EXTRACT(YEAR FROM CAST(invoice_date AS date)) = 2013 GROUP BY EXTRACT(MONTH FROM CAST(invoice_date AS date))) SELECT year2012.m,SUM(year2012.total) AS sum_total_2012,SUM(year2013.total) AS sum_total_2013,ROUND((SUM(year2013.total) - SUM(year2012.total)) / SUM(year2012.total) * 100) AS percFROM year2012 JOIN year2013 ON year2012.m = year2013.mGROUP BY year2012.mORDER BY year2012.m ASC| m | sum_total_2012 | sum_total_2013 | perc |
|---|---|---|---|
| 1 | 37.62 | 37.62 | 0 |
| 2 | 37.62 | 27.72 | -26 |
| 3 | 37.62 | 37.62 | 0 |
| 4 | 37.62 | 33.66 | -11 |
| 5 | 37.62 | 37.62 | 0 |
| 6 | 37.62 | 37.62 | 0 |
| 7 | 39.62 | 37.62 | -5 |
| 8 | 47.62 | 37.62 | -21 |
| 9 | 46.71 | 37.62 | -19 |
| 10 | 42.62 | 37.62 | -12 |
| 11 | 37.62 | 49.62 | 32 |
| 12 | 37.62 | 38.62 | 3 |