← Усі задачіSQL · Senior
Зростання виручки місяць до місяця
Порахуйте виручку за місяцями й зростання відносно попереднього місяця: колонки month (перший день місяця, тип date), revenue і growth_pct - відсоток зміни, округлений до одного знака (NULL для першого місяця). За month.
Наприклад, 200 → 300 - це 50.0, а 300 → 150 - це -50.0.
Таблиці
CREATE TABLE orders (
id int PRIMARY KEY,
created_at date NOT NULL,
total numeric(10, 2) NOT NULL
);Ctrl+Enter - запустити тести. Tab - відступ; щоб вийти з редактора клавіатурою, натисніть Esc, а потім Tab. Код зберігається в цьому браузері.
Тести (3)
Кожен тест заповнює таблиці своїми даними й порівнює результат вашого запиту з очікуваним: ті самі колонки (назви й порядок) і ті самі рядки в тому самому порядку, тож ORDER BY важливий. Запит виконується в справжньому PostgreSQL просто в браузері; перший запуск завантажує його (близько 5 МБ).
INSERT INTO orders VALUES (1, '2024-01-05', 100.00), (2, '2024-01-20', 100.00), (3, '2024-02-11', 300.00), (4, '2024-03-02', 150.00);
-- growth rounded to one decimal place INSERT INTO orders VALUES (1, '2024-04-01', 300.00), (2, '2024-05-15', 400.00), (3, '2024-06-30', 401.00);
-- a single month: growth is NULL INSERT INTO orders VALUES (1, '2024-09-09', 50.00);