SELECT MIN(id) as driver_id, name
SUM(DISTANCE.road_distance < 3000) AS less_than_3km_to_customer_distance_denials
FROM taxijakt.wave_drivers DRIVERS
JOIN (
SELECT driver_id, order_id
FROM taxijakt.wave_driver_denied_orders
WHERE DATE(timestamp) >= CURRENT_DATE() - INTERVAL 40 DAY
) DENIALS ON DENIALS.driver_id = DRIVERS.id
JOIN (
SELECT driver_id, order_id, road_distance
FROM taxijakt.wave_driver_order_distance
) DISTANCE ON DISTANCE.driver_id = DENIALS.driver_id AND DISTANCE.order_id = DENIALS.order_id
WHERE verified is NOT NULL AND country_code = 'PL'
GROUP BY id
ORDER BY 2