select NVL(logClassMaxNumber,0) from TB_USER_LOGCLASS 
where TB_USER_LOGCLASS.logClassID=100 and TB_USER_LOGCLASS.logClassIsPassMaxAutoDelete=1logClassMaxNumber是number类型
为什么查出logClassMaxNumber为null时返回还是null
不是当logClassMaxNumber为null时返回的是0么

解决方案 »

  1.   


    --测试了一下,没发现你说的情况
    --仔细检查检查,或许是什么地方写错了
    create table goods(
           g_no varchar2(10),
           g_name varchar2(15),
           g_num number(10),
           dt date);
    SQL> select * from goods;G_NO       G_NAME                G_NUM DT
    ---------- --------------- ----------- -----------
    1156       舒肤佳                      2011-04-15
    1101       三笑牙膏                500 2011-01-01
    1120       海飞丝                      2011-02-05SQL> select g_no,
      2         g_name,
      3         nvl(g_num,0) g_num,
      4         to_char(dt,'yyyy-mm-dd') dt
      5  from goods;G_NO       G_NAME               G_NUM DT
    ---------- --------------- ---------- ----------
    1156       舒肤佳                   0 2011-04-15
    1101       三笑牙膏               500 2011-01-01
    1120       海飞丝                   0 2011-02-05