orcale order by 排序规则
时间: 2023-12-26 15:00:51 浏览: 82
在Oracle中,使用ORDER BY子句可以对查询结果进行排序。排序规则可以通过设置NLS_SORT参数来指定。在Oracle 9i中,新增了按照拼音、部首、笔画排序的功能。
具体的排序规则如下:
- SCHINESE_RADICAL_M:按照部首(第一顺序)、笔划(第二顺序)排序。
- SCHINESE_STROKE_M:按照笔划(第一顺序)、部首(第二顺序)排序。
- SCHINESE_PINYIN_M:按照拼音排序,系统的默认排序方式为拼音排序。
举个例子,假设有一个表名为dept,其中的name字段是中文。可以使用以下语句实现按照单位名称的笔划、部首和拼音排序:
1. 按照笔划排序:SELECT * FROM dept ORDER BY nlssort(name, 'NLS_SORT=SCHINESE_STROKE_M');
2. 按照部首排序:SELECT * FROM dept ORDER BY nlssort(name, 'NLS_SORT=SCHINESE_RADICAL_M');
3. 按照拼音排序(默认排序方式):SELECT * FROM dept ORDER BY nlssort(name, 'NLS_SORT=SCHINESE_PINYIN_M')。
需要注意的是,当被排序的栏位存在NULL值时,可以使用NULLS FIRST或NULLS LAST来指定NULL值排在最前面或最后面。具体的处理方法可以参考Oracle相关文档。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [ORACLE ORDER BY 排序规则](https://blog.csdn.net/wozengcong/article/details/9453047)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [Oracle数据库中ORDER BY排序和查询按IN条件的顺序输出](https://download.csdn.net/download/weixin_38654380/13701342)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [oracle使用order by排序null值如何处理](https://download.csdn.net/download/weixin_38617604/12834767)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
阅读全文