Oracle 排序中常用的NULL值處理方法
、預設處理
Oracle在Order by 時預設認為null是最大值,所以如果是ASC升序則排在最後,DESC降序則排在最前
、使用nvl函式
nvl函式可以將輸入引數為空時轉換為一特定值,如
nvl(employee_name,’張三’)表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過這個函式可以定製null的排序位置。
、使用decode函式
decode函式比nvl函式更強大,同樣它也可以將輸入引數為空時轉換為一特定值,如
decode(employee_name,null,’張三’, employee_name)表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過這個函式可以定製null的排序位置。
、使用case 語法
Case語法是Oracle i後開始支援的,是一個比較靈活的語法,同樣在排序中也可以應用
如:
select *
from employee
order by (case employee_name
when null then
'張三'
else
employee_name
end)
www.bitsCN.net網管部落格等你來搏
from employee
order by (case employee_name
when null then
'張三'
else
employee_name
end)
表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過case語法同樣可以定製null的排序位置。
、使用nulls first 或者nulls last 語法
Nulls first和nulls last是Oracle Order by支援的語法
如果Order by 中指定了表示式Nulls first則表示null值的記錄將排在最前(不管是asc 還是 desc)
如果Order by 中指定了表示式Nulls last則表示null值的記錄將排在最後 (不管是asc 還是 desc)
使用語法如下:
--將nulls始終放在最前
select * from zl_cbqc order by cb_ld nulls first
--將nulls始終放在最後
select * from zl_cbqc order by cb_ld desc nulls last
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11320622/viewspace-675057/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle唯一約束中NULL的處理OracleNull
- Oracle空串與null的處理OracleNull
- Oracle外來鍵約束中NULL的處理OracleNull
- Oracle 在連線條件裡處理和比較 NULL 值OracleNull
- 【NULLS】Oracle對SQL排序後NULL值位置的“特殊關照”NullOracleSQL排序
- Java--- 關於null的處理若干方法JavaNull
- 【NULL】Oracle null值介紹NullOracle
- JavaScript常用的字串處理方法JavaScript字串
- hive中的null值HiveNull
- 索引裡的NULL值與排序小記索引Null排序
- PostgreSQL排序把null值排在後面SQL排序Null
- Oracle 基於其他表中的資料更新記錄時空值的處理方法Oracle
- Java 中關於 null 物件的容錯處理JavaNull物件
- SQL中的空值NULLSQLNull
- SQL server中的NULL值SQLServerNull
- oracle中的nullOracleNull
- 物件轉json字串的過程中對value為null的值的一些處理物件JSON字串Null
- 用decode和nvl處理null值時需要注意的地方Null
- 影像處理或其他多媒體處理中的值溢位處理
- SQL 查詢中的 NULL 值SQLNull
- 去除陣列中的 null 值陣列Null
- ORACLE鎖等待的處理方法Oracle
- 面試題((A)null).fun()——java中null值的強轉面試題NullJava
- C++中“非常量引用的初始值必須是左值”的處理方法C++
- sqlserver、oracle資料庫排序空值null問題解決辦法SQLServerOracle資料庫排序Null
- 如何處理JavaScript 中的貨幣值?JavaScript
- Spark2 Dataset DataFrame空值null,NaN判斷和處理SparkNullNaN
- 【問題處理】“NOT IN”與“NULL”的邂逅Null
- MySQL 中處理 Null 時要注意兩個陷阱MySqlNull
- Oracle中的NULL(六)OracleNull
- Oracle中的NULL(五)OracleNull
- Oracle中的NULL(八)OracleNull
- Smartform中的長文處理方法ORM
- 【轉】shell指令碼處理字串的常用方法指令碼字串
- python中try except處理程式異常的三種常用方法Python
- oracle學習(3) -變數為null時的查詢處理Oracle變數Null
- 處理Oracle Session中的鎖OracleSession
- mysql中null與“空值”的坑MySqlNull