sql空值值转化为0

来源:互联网 发布:淘宝扣分规则 编辑:程序博客网 时间:2024/06/07 02:16
如果是 Oracle那么NVL(   (你那个子查询) ,   0  )   AS  概念策划阶段如果是 SQL Server那么ISNULL(   (你那个子查询) ,   0  )   AS  概念策划阶段

eg:
a可能为空的列名
sqlserver 用 isnull (a,0) 的函数 oracle 用 nvl( a, 0) 的函数 通用的是case when a is null then 0 else a end的写法
 StringBuffer hql = new StringBuffer("SELECT * FROM (SELECT TAPP.OBJECTID AS objectid,TAPP.YONGHUMING as yonghuming,TAPP.XINGMING AS xingming," +
  " TAPP.XINGBIE AS xingbie,TAPP.BAOMINGSHIJIAN AS baomingshijian,TAPP.SHENFENZHENG AS shenfenzheng,TAPP.XUELI AS xueli,TAPP.SHOUJI AS shouji," +
 " ANL.APPLY_WAY AS applyWay,CLS.PEIXUNQIHAO AS peixunqihao,CASE WHEN ANL.STATUS IS NULL THEN 0 ELSE ANL.STATUS END AS status FROM T_BAS_APPLICATION AS TAPP LEFT JOIN ONLINEREGRELATION AS ONL " +
  " ON TAPP.OBJECTID = ONL.RELATIONID LEFT JOIN T_BAS_CLASS CLS ON ONL.OBJECTID = CLS.OBJECTID" +
 " LEFT JOIN T_TRAINING_CLASS_APPLY AS ANL ON TAPP.OBJECTID = ANL.APPLY_ID AND CLS.OBJECTID = ANL.CLASS_ID WHERE 1=1) AS RE WHERE 1=1");

0 1