读书人

oracle nvl函数的使用方法

发布时间: 2012-08-10 12:19:33 作者: rapoo

求助oracle nvl函数的使用方法
有表t
yhzh字段可能为空(null)
查询时,需要把空值(null)替换成20个空格
如何写

select nvl(yhzh,(' ',20)) from t

这样写不行

[解决办法]

SQL code
--换成tselect nvl(yhzh,substr(rpad('a',21,' '),2,20)) from t;
[解决办法]
select nvl(yhzh,lpad(' ',20)) from dual;
[解决办法]
这个涉及到lpad与rpad函数的使用
lpad :如 lpad(变量,10,' ')就是指变量的长度不够10的时候给变量前加空格,直到变量长度为10;
rpad: rpad(变量,10,' ')就是指变量的长度不够10的时候给变量后加空格,直到变量长度为10
楼主这个的写法:

select nvl(yhzh,rpad(' ',20,' ')) from t
[解决办法]
SQL code
SELECT NVL(YHZH,LPAD(' ',20)) FROM T
[解决办法]
NVL(,LPAD('',20))

读书人网 >oracle

热点推荐