您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

ORACLE按照拼音,部首,笔画排序

2024/4/18 22:31:19发布23次查看
下面的方法需要oracle9i和以上的版本才支持。 oracle9i之前,中文是按照二进制编码进行排序的。 在oracle9i中新增了按照拼音、部首、笔画排序功能。设置nls_sort值 schinese_radical_m 按照部首(第一顺序)、笔划(第二顺序)排序 schinese_stroke_m 按照笔
 下面的方法需要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 '%′t%' or xm like '%o?%') and ryid not in(select ryid from rc_zsdj where czt='1') order by nlssort(xm,'nls_sort=schinese_pinyin_m')
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product