不試不知道,Oracle中,長度為0的字元串'' 居然與null等價!
衆所周知,null代表空,什麼都不存在,而一個字元串'',雖然長度為0,但畢竟已經是一個字元串,二者怎麼能等價,混為一談呢。
在SQL SERVER 中,
SELECT ISNULL(ISNULL(null,''),'is null') AS str
結果是 ''
但在Oracle中,
SELECT NVL(NVL(null,''),'is null') FROM table1
不試不知道,Oracle中,長度為0的字元串'' 居然與null等價!
衆所周知,null代表空,什麼都不存在,而一個字元串'',雖然長度為0,但畢竟已經是一個字元串,二者怎麼能等價,混為一談呢。
在SQL SERVER 中,
SELECT ISNULL(ISNULL(null,''),'is null') AS str
結果是 ''
但在Oracle中,
SELECT NVL(NVL(null,''),'is null') FROM table1