你看这一字段对应的是你select 的哪个,肯定是这个字段有空值了,看一下就知道了!

解决方案 »

  1.   

    按这个方式来加nvl
     nvl((select nvl(rele_office_id,'0') from tab_test3  where account_id=a.account_id),'0') rele_office_id,
      

  2.   

    如:
    select nvl((select '' from dual), 'asd') from dual
      

  3.   

    12:18:34 SQL> select nvl('a','is null') from dual where 1=2;未选定行已用时间:  00: 00: 00.7812:19:40 SQL> select nvl((select 'a' from dual where 1=2),'is null') from dual;NVL((SE
    -------
    is null已用时间:  00: 00: 00.62
    12:19:56 SQL> 
      

  4.   

    nvl((select rele_office_id from tab_test3 where account_id=a.account_id),0)
      

  5.   

    找到解决办法了,谢谢!
    (select nvl(rele_office_id,'0') from tab_test3 where account_id=a.account_id) rele_office_id,
    改为
    nvl((select rele_office_id from tab_test3 where account_id=a.account_id),'0') rele_office_id,
    即可!