-- Il y a des données avec les champs user_id, status et created_at.
-- Écrivez une requête SQL qui compte les demandes réussies de chaque utilisateur au cours des 7 derniers jours et trie le résultat par nombre en ordre décroissant.
-- Statut réussi - 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;