-- Istnieją dane z polami user_id, status i created_at.
-- Napisz zapytanie SQL, które zlicza udane żądania każdego użytkownika z ostatnich 7 dni i sortuje wynik według liczby malejąco.
-- Status udany - OK
CREATE TABLE user_requests (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
status VARCHAR(50) NOT NULL,
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP NOT NULL
);
SELECT
user_id,
COUNT(*) AS successful_count
FROM user_requests
WHERE status = 'OK'
AND created_at >= CURRENT_TIMESTAMP - INTERVAL '7 days'
GROUP BY user_id
ORDER BY successful_count DESC;