MS SQL與Oracle判斷欄位是否為NULL的方法比較,COALESCE()、ISNULL()、NVL()

小弟最近玩Oracle剛好想到有沒有判斷欄位為NULL的方法..
找了很多資料..方法太多了..我在這只介紹幾種並且與MS SQL比較...

小弟最近玩Oracle剛好想到有沒有判斷欄位為NULL的方法..

找了很多資料..方法太多了..我在這只介紹幾種並且與MS SQL比較...


首先介紹COALESCE(),這個屬於ANSI標準,可以用在MS SQL或Oracle

在Oralce還有找到一個他自已的用法NVL(),這個用法在MS SQL是不行的..

Oracle


在MS SQL大家一定知道的ISNULL(),也是MS SQL特有的..Oracle是不能用的.

MS SQL

但在MS SQL的ISNULL()與COALESCE()比較,ISNULL()的效能會比較好..
 

參考網址:

http://www.bennadel.com/blog/196-SQL-COALESCE-Very-Cool-But-Slower-Than-ISNULL-.htm
http://decipherinfosys.wordpress.com/2007/08/02/coalesce-isnull-nvl/
http://blogs.x2line.com/al/archive/2004/03/01/189.aspx
http://databases.aspfaq.com/database/coalesce-vs-isnull-sql.html