下面的方法需要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排序方法,按拼音,部首,笔画排序,有效实用!
oracle获取汉字拼音拼音首字母的功能函数 oracle 获取汉字拼音
oracle拼音首字母查询
oracle生成拼音码,oracle生成拼音码,oracle生成拼音码,oracle生成拼音码,oracle生成拼音码
oracle生成拼音、五笔首字母的functions方法,亲测有效!!!
oracle获取汉字拼音首字母,用于根据首字母筛选汉字
oracle汉字转拼音 获得全拼、拼音首字母、拼音截取等
Oracle查询取汉字拼音首字母Function
oracle创建函数生成拼音码(汉字首字母)
Oracle获取汉字拼音和拼音首字母的功能函数
别人的存储过程 今天正好用到了免费提供给大家
--此函数默认返回汉字拼音的首字母,第二个参数不为空则返回全拼。 create or replace function f_getFirstOrFullSpell(p_cnStr In varchar2,p_sign In number default null) return varchar2 as lv_spell varchar2...
Oracle汉字拼音首字母函数
oracle汉字转换成拼音首字母、全拼,各种转换类型比较齐全,oracle汉字转换五笔首字母链接https://blog.csdn.net/weixin_40912627/article/details/88710064
在oracle9i中新增了按照拼音、部首、笔画排序功能。 1、设置NLS_SORT参数值 SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序 SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序 ...
oracle汉字转拼音package_获得全拼——拼音首字母_拼音截取等,供大家参考!!!
这是经常用的一套oracle拼音码 五笔码,不知道其他人是否用的比较合适
oracle汉字转拼音package_获得全拼——拼音首字母_拼音截取
获取汉字首字母拼音 Oracle 拼音检索函数 已对性能和频度优化 调用速度快。select f_pinyin('中国') from dual; select * from table where f_pinyin(field) like '%%';
可以将oracle数据库中保存的中文转换成拼音,拼音首字母等