select product_id,
round(avg(if_click),3) as ctr,
round(sum(if_cart)/sum(if_click),3) as cart_rate,
round(sum(if_payment)/sum(if_cart),3) as payment_rate,
round(sum(if_refund)/sum(if_payment),3) as refund_rate
from tb_user_event
where date_format(event_time,'%Y-%m')='2021-10'
group by product_id
order by product_id

简单