unit_cost是非空字段
update costs_20210326 t1
set t1.unit_cost=(select
case when p.promo_category='TV' then unit_cost+1
when p.promo_category='NO PROMOTION' then 0 end
from promotions p
where t1.promo_id=p.promo_id
and t1.time_id=last_day(time_id)
and p.promo_category in ('TV','NO PROMOTION'))
最开始写写的语句不加上 这个where 条件无法更新数据 报错 unit_cost 为空
加上上述where条件之后就可以更新字段了 这是为什么?
where 条件:
where exists (select 1 from text b where a.字段名 = b.字段名)