|
|
最初由 yangtingkun 发布
[B]
我现在不能理解长度为0的意义是什么。对于null来说,长度也是null。
SQL> select length(null) from dual;
LENGTH(NULL)
------------
SQL> select length('') from dual;
LENGTH('')
---------- [/B]
8i的文档已经说明Oracle currently treats a character value with a length of zero as null.
所以,''就是null(以下测试是816客户端连接到Oracle 9201上去做的)
A.
SQL> select 1 from dual where '' is null;
1
----------
1
B.
SQL> select 1 from dual where ''='';
未选定行
C.
SQL> select length('') from dual;
LENGTH('')
----------
D.
SQL> select 1 from dual where length('') is null;
1
----------
1
另,--------试试select length(chr(0)) from dual;
9i服务器(9201)
SQL> select length(chr(0)) from dual;
LENGTH(CHR(0))
--------------
1
8i服务器(816)
SQL> select length(chr(0)) from dual;
LENGTH(CHR(0))
--------------
0
偶也困惑啊,长度为0到底是虾米呢?? |
|