ORACLE按照拼音,部首,筆畫排序

2021-08-23 11:57:58 字數 914 閱讀 8071

下面的方法需要oracle9i和以上的版本才支援。

oracle9i之前,中文是按照二進位制編碼進行排序的。

在oracle9i中新增了按照拼音、部首、筆畫排序功能。設定nls_sort值

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

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

schinese_pinyin_m 按照拼音排序,系統的預設排序方式為拼音排序

舉例如下:

表名為 dept ,其中name欄位是中文,下面分別實現按照單位名稱的筆劃、部首和拼音排序。

1: //按照筆劃排序

2: select * from dept order by nlssort(name,'nls_sort=schinese_stroke_m');

3: //按照部首排序

4: select * from dept order by nlssort(name,'nls_sort=schinese_radical_m');

5: //按照拼音排序,此為系統的預設排序方式

6: select * from dept order by nlssort(name,'nls_sort=schinese_pinyin_m');

注意,該sql指令並非標準指令,在sqlserver下面的實現方式並不相同。

把查詢出來的人員姓名按照拼音的第乙個字母進行排序

select * from ryjbqk where (xm like '%¸ß%' or xm like '%´þ%' or xm like '%ºâ%') and ryid not in(select ryid from rc_zsdj where czt='1') order by nlssort(xm,'nls_sort=schinese_pinyin_m')

ORACLE按照拼音,部首,筆畫排序

下面的方法需要oracle9i和以上的版本才支援。oracle9i之前,中文是按照二進位制編碼進行排序的。在oracle9i中新增了按照拼音 部首 筆畫排序功能。設定nls sort值 schinese radical m 按照部首 第一順序 筆劃 第二順序 排序 schinese stroke m...

按照拼音 部首 筆畫排序功能 oracle

設定nls sort值 schinese radical m 按照部首 第一順序 筆劃 第二順序 排序 schinese stroke m 按照筆劃 第一順序 部首 第二順序 排序 schinese pinyin m 按照拼音排序,系統的預設排序方式為拼音排序 舉例如下 表名為 dept 其中nam...

Oracle按筆畫,部首,拼音排序

在oracle9i中新增了按照拼音 部首 筆畫排序功能。設定nls sort值 schinese radical m 按照部首 第一順序 筆劃 第二順序 排序 schinese stroke m 按照筆劃 第一順序 部首 第二順序 排序 schinese pinyin m 按照拼音排序,系統的預設排...