-- Er zijn gegevens met velden user_id, status en created_at.
-- Schrijf een SQL-query die het aantal succesvolle verzoeken van elke gebruiker in de afgelopen 7 dagen telt en de resultaten sorteert op aantal in aflopende volgorde.
-- Succesvolle status - 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;