国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle 排序中常用的NULL值處理方法

2024-08-29 13:32:54
字體:
來源:轉載
供稿:網友
1、缺省處理
 
Oracle在Order by 時缺省認為null是最大值,所以如果是ASC升序則排在最后,DESC降序則排在最前
2、使用nvl函數
 
nvl函數可以將輸入參數為空時轉換為一特定值,如
nvl(employee_name,’張三’)表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過這個函數可以定制null的排序位置。
3、使用decode函數
 
decode函數比nvl函數更強大,同樣它也可以將輸入參數為空時轉換為一特定值,如
decode(employee_name,null,’張三’, employee_name)表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過這個函數可以定制null的排序位置。
4、使用case 語法
 
Case語法是Oracle 9i后開始支持的,是一個比較靈活的語法,同樣在排序中也可以應用
如:
select *
 from employee
 order by  (case employee_name
            when null then
             '張三'
            else
             employee_name
          end)
表示當employee_name為空時則返回’張三’,如果不為空則返回employee_name
通過case語法同樣可以定制null的排序位置。
 
5、使用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
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 利津县| 奇台县| 玉环县| 乐平市| 库尔勒市| 花莲市| 南昌县| 彰化县| 合阳县| 定南县| 鄄城县| 嘉祥县| 贵南县| 秭归县| 稷山县| 晋宁县| 常山县| 南江县| 鄂温| 兴海县| 碌曲县| 鄂托克前旗| 大厂| 东安县| 贵州省| 西林县| 本溪市| 四平市| 达日县| 嘉善县| 永宁县| 宜兰市| 宁波市| 裕民县| 奈曼旗| 宝山区| 吉林省| 宽甸| 金川县| 罗定市| 屯门区|