時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)
1、缺省處理 Oracle在Order by 時(shí)缺省認(rèn)為null是最大值,所以如果是ASC升序則排在最后,DESC降序則排在最前
2、使用nvl函數(shù) nvl函數(shù)可以將輸入?yún)?shù)為空時(shí)轉(zhuǎn)換為一特定值,如nvl(employee_name,’張三’)表示當(dāng)employee_name為空時(shí)則返回’張三’,如果不為空則返回employee_name通過這個(gè)函數(shù)可以定制null的排序位置。
3、使用decode函數(shù) decode函數(shù)比nvl函數(shù)更強(qiáng)大,同樣它也可以將輸入?yún)?shù)為空時(shí)轉(zhuǎn)換為一特定值,如decode(employee_name,null,’張三’, employee_name)表示當(dāng)employee_name為空時(shí)則返回’張三’,如果不為空則返回employee_name通過這個(gè)函數(shù)可以定制null的排序位置。
4、使用case 語法 Case語法是Oracle 9i后開始支持的,是一個(gè)比較靈活的語法,同樣在排序中也可以應(yīng)用如:select *
from employee
order by? (case employee_name
when null then
'張三'
else
employee_name
end)表示當(dāng)employee_name為空時(shí)則返回’張三’,如果不為空則返回employee_name通過case語法同樣可以定制null的排序位置。
5、使用nulls first 或者nulls last 語法 Nulls first和nulls last是Oracle Order by支持的語法如果Order by 中指定了表達(dá)式Nulls first則表示null值的記錄將排在最前(不管是asc 還是 desc)如果Order by 中指定了表達(dá)式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
關(guān)鍵詞標(biāo)簽:Oracle
相關(guān)閱讀
熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索
人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法