← Wszystkie zadaniaSQL · Senior
Wzrost przychodu miesiąc do miesiąca
Policz przychód według miesięcy i wzrost względem poprzedniego miesiąca: kolumny month (pierwszy dzień miesiąca, typ date), revenue i growth_pct, procent zmiany zaokrąglony do jednego miejsca (NULL dla pierwszego miesiąca). Według month.
Na przykład 200 → 300 to 50.0, a 300 → 150 to -50.0.
Tabele
CREATE TABLE orders (
id int PRIMARY KEY,
created_at date NOT NULL,
total numeric(10, 2) NOT NULL
);Ctrl+Enter uruchamia testy. Tab robi wcięcie; aby wyjść z edytora klawiaturą, naciśnij Esc, a potem Tab. Kod zapisuje się w tej przeglądarce.
Testy (3)
Każdy test wypełnia tabele własnymi danymi i porównuje wynik twojego zapytania z oczekiwanym: te same kolumny (nazwy i kolejność) i te same wiersze w tej samej kolejności, więc ORDER BY ma znaczenie. Zapytanie działa w prawdziwym PostgreSQL prosto w przeglądarce; pierwsze uruchomienie go pobiera (około 5 MB).
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);