ORACLE按照比划、部首和拼音排序的实现
2006-08-31 10:53
323 查看
找了相关的一些资料,都说的不是很清楚,自己也研究了下,终于弄明白了,希望对大家有帮助。
需要说明的是下面的方法需要ORACLE9i和以上的版本才支持。
Oracle9i之前,中文是按照二进制编码进行排序的。
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值
SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
SCHINESE_PINYIN_M 按照拼音排序,系统的默认排序方式为拼音排序
举例如下:
表名为 dept ,其中name字段是中文,下面分别实现按照单位名称的笔划、部首和拼音排序。
注意,该SQL指令并非标准指令,在SQLServer下面的实现方式并不相同。
需要说明的是下面的方法需要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下面的实现方式并不相同。
相关文章推荐
- ORACLE按照比划、部首和拼音排序的实现(转)
- oracle实现汉字按照拼音、笔画和部首排序
- ORACLE按照拼音,部首,笔画排序
- ORACLE按照拼音,部首,笔画排序
- ORACLE按照拼音,部首,笔画排序
- Hibernate 实现Oracle的中文汉字按照拼音排序
- ORACLE按照拼音,部首,笔画排序
- Hibernate 实现Oracle的中文汉字按照拼音排序 之延续,通用的查询排序能力。
- ORACLE按照拼音,部首,笔画排序
- ORACLE按照拼音,部首,笔画排序
- oracle中对排序的总结(按照拼音、部首、笔画排序功能 )
- oracle中对排序的总结(按照拼音、部首、笔画排序功能 )
- 按照拼音、部首、笔画排序功能(oracle)
- oracle按照拼音、部首、笔画排序
- ORACLE按照拼音,部首,笔画排序
- oracle 按照拼音、部首、笔画排序
- ORACLE按照拼音,部首,笔画排序
- javaScript对文字按照拼音排序实现代码
- javaScript对文字按照拼音排序实现代码
- 分类按照拼音第一字母排序显示实现