将null的栏位转换成0,已利于计算
常常我们会利用某些栏位去做加减,做出运算栏位。但若是这个栏位一个是空白一个是5 ,则当我们相加时会呈现null,但我们所希望的应该是5
因此我们通常会透过sql 将null 值转换为0 这样便可以相加
MS SQL中我们可以利用ISNULL来判定是否为null值。如下
select ISNULL(A,0) From Atable
这时候变会解是为当A=null 时将其值设为 0
也可以是一个运算组合若 (sum(SD_QTY)+sum(GIFT_QTY)-sum(OUT_QTY) == null 则将其设为0
select ISNULL((sum(SD_QTY)+sum(GIFT_QTY)-sum(OUT_QTY)),0) from SALE_ORDER a,SALE_ORDER_D b
若我们并不是只判断null则需要透过case when
下面这个就是再说假设我搜寻出来没有资料(count = 0 ) 则我将AcaseWhen这个栏位= 0 ,
若有资料则将AcaseWhen 设成A栏位的总和
Select (case when COUNT(*)=0 then 0 else SUM(A) end)from table as AcaseWhen