方法一:case when

select u.vip,sum(case when o.order_price is null then 0 else o.order_price end) as order_total
from uservip_tb u left join order_tb o on u.user_id = o.user_id
group by u.vip
order by order_total desc

方法二:if

select u.vip,sum(if(o.order_price,o.order_price,0)) as order_total
from uservip_tb u left join order_tb o on u.user_id = o.user_id
group by u.vip
order by order_total desc

方法三:coalesce

select u.vip,sum(coalesce(o.order_price,0)) as order_total
from uservip_tb u left join order_tb o on u.user_id = o.user_id
group by u.vip
order by order_total desc

方法四:ifnull


select u.vip,sum(ifnull(o.order_price,0)) as order_total
from uservip_tb u left join order_tb o on u.user_id = o.user_id
group by u.vip
order by order_total desc