select round(sum(order_date = customer_pref_delivery_date)/count(distinct customer_id) ,2) immediate_percentage
from delivery
where (customer_id, order_date) in
(select customer_id, min(order_date)
from delivery d
group by customer_id)
注意这里sum(order_date = customer_pref_delivery_date)求出来为2,如果改为count(order_date = customer_pref_delivery_date),则结果为4,注意这两种用法不是两倍的关系。