Oracle中nlssort 函式排序功能

2021-09-02 10:24:41 字數 554 閱讀 1836

oracle9i之前,中文是按照二進位制編碼進行排序的。在oracle9i中新增了按照拼音、部首、筆畫排序功能。

設定nls_sort值即可。

schinese_radical_m 按照部首(第一順序)、筆劃(第二順序)排序

schinese_stroke_m 按照筆劃(第一順序)、部首(第二順序)排序

schinese_pinyin_m 按照拼音排序

使用方法如下:

拼音 select * from 表名 order by nlssort(排序欄位名,'nls_sort = schinese_pinyin_m')

筆劃 select * from 表名 order by nlssort(排序欄位名,'nls_sort = schinese_stroke_m')

部首 select * from 表名 order by nlssort(排序欄位名,'nls_sort = schinese_radical_m')

alter session set nls_sort=''; //排序影響整個會話

Oracle中的CHR 函式與ASCII 函式

近日在資料表的操作中,想將表中某字段值裡的回車換行符替換掉,很自然的想到用replace desc,r n 但是未能生效。經查閱發現,正確的做法應該是用replace desc,chr 13 chr 10 chr 函式之前未使用過,所以做個記錄。chr 將ascii碼轉換為字元 語法chr numb...

Oracle中用rownum替代Top函式的方法

今天寫乙個方法,主要功能是從資料庫中根據條件查出第一條資訊。以前用sql server的時候,我記得top方法還是非常簡單實用的。方法是 select top n 列名 from 表名 where 查詢條件 這個方法想必像我這樣的新人也會非常熟悉,所以就不做解釋了。今天用的資料庫是oracle。其使...

如何使用Oracle的COALESCE函式

資料庫應用軟體很多時候將多重的 相關的實體資訊儲存在同乙個 中。例如,購買的零件和本地生產的零件都是零件,經理和工人都是員工,儘管多重的實體 型別在資料儲存上略有不同,但是它們有太多的相同之處,因此通常使用乙個 而不是兩個。處理這樣的 通常意味著對每一行進行條件測試來檢查哪個實體型別正在被處理,然後...