-- Hay datos con campos user_id, status y created_at.
-- Escribe una consulta SQL que cuente las solicitudes exitosas de cada usuario en los últimos 7 días y ordene el resultado por cantidad en orden descendente.
-- Estado exitoso - 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;