下面的方法需要oracle9i和以上的版本才支援。
oracle9i之前,中文是按照二進位制編碼進行排序的。
在oracle9i中新增了按照拼音、部首、筆畫排序功能。設定nls_sort值
schinese_radical_m 按照部首(第一順序)、筆劃(第二順序)排序
schinese_stroke_m 按照筆劃(第一順序)、部首(第二順序)排序
schinese_pinyin_m 按照拼音排序,系統的預設排序方式為拼音排序
該文章**自網路大本營:http://www.qqview.com/dev/database/200891820529.html
舉例如下:
表名為 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')
該文章**自網路大本營:http://www.qqview.com/dev/database/200891820529.html
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 按照拼音排序,系統的預設排...