Вы можете использовать второй уровень агрегирования:
SELECT AVG(avg_time * 1.0)
FROM (SELECT customer_id, max(order_time) - min(order_time) as days_from_first_to_last_order, (case when count() > 1 then
datediff(day, min(order_time), max(order_time)) / nullif(count() - 1, 0) as avg_time
FROM ORDERS
GROUP BY customer_id
) c
Вы заметите, что я упростил подзапрос с помощью nullif()
.