Junior
CREATE TABLE orders ( driver_id varchar, city varchar, order_id varchar ); -- Obter os 10 principais motoristas por número de pedidos em cada cidade
sobes.tech IA
Resposta da IA
Para obter os 10 principais motoristas por número de pedidos em cada cidade, pode usar a função de janela ROW_NUMBER() ou RANK() em SQL. Exemplo de consulta:
SELECT driver_id, city, order_count
FROM (
SELECT
driver_id,
city,
COUNT(order_id) AS order_count,
ROW_NUMBER() OVER (PARTITION BY city ORDER BY COUNT(order_id) DESC) AS rn
FROM orders
GROUP BY city, driver_id
) sub
WHERE rn <= 10
ORDER BY city, order_count DESC;
Aqui agrupamos os pedidos por motorista e cidade, contamos o número de pedidos, depois numeramos os motoristas em cada cidade por ordem decrescente do número de pedidos e selecionamos apenas os 10 primeiros.