1.decode()的应用
例如:decode(wllx,‘旧物料’,wlsl,0) 新列名
意思是:添加一列,wllx这个字段的值,if=‘旧物料’,新的列名的值显示wlsl这个字段的值,否则,显示 0
例如:
select wlmc,wlgg,wllx from BT_SGGL_KC
同样类型的苫盖网,既有新物料,又有旧物料,我想让每个苫盖网的新,旧物料在一行显示
select wlmc,wlgg,sum(decode(wllx,'旧物料',wlsl,0)) 旧物料,sum(decode(wllx,'新物料',wlsl,0)) 新物料
from BT_SGGL_KC where gsid='1000000005' group by wlmc,wlgg order by wlmc,wlgg
如图所示,有旧物料的显示数量,没有的显示0.
2.判断数据是否小于0
SQL> SELECT SIGN(-47.3), SIGN(0), SIGN(47.3) FROM dual;
SIGN(-47.3) SIGN(0) SIGN(47.3)
-1 0 1