在oracle中查询的数据按汉语拼音首字母排序

 时间:2026-04-22 14:01:29

1、首先安装Oracle和PL/SQL Developer,登陆PL/SQL Developer,登陆界面如图所示。

在oracle中查询的数据按汉语拼音首字母排序

2、例如要查询的表名为base_service,普通查询sql为select * from base_service,结果如图

在oracle中查询的数据按汉语拼音首字母排序

3、查询的sql为 select * from base_service order by nlssort(service_name,'NLS_SORT=SCHINESE_PINYIN_M') ,效果如图

在oracle中查询的数据按汉语拼音首字母排序

4、看着sql和效果图,有些人肯定觉得我的sql写的麻烦了,select * from base_service order by service_name也可以,效果图如图所示

在oracle中查询的数据按汉语拼音首字母排序

5、也是按拼音排序的,为什么呢?这是因为按拼音排序是按ASCII的大小来排序的,ASCII中有一级汉字和二级汉字之分,如果全是一级汉字,那么两种方法就正确,如果有二级汉字的时候,第二种就不正确。看sql 

with a as (select '{' name from dual union all

         

         select '%' name from dual union all

         select '中' name from dual union all

         select '鑫' name from dual union all

         select '木' name from dual union all

         select '酥' name from dual union all

         select '贴' name from dual 

         ) 

 select name ,ascii(name) from a order by name ,效果如图所示

在oracle中查询的数据按汉语拼音首字母排序

6、用第二种方法,会看到“鑫”和“中”的顺序颠倒了,如果用第一种方法,效果如图。

在oracle中查询的数据按汉语拼音首字母排序

  • windows edge 显示书签栏
  • win11更改tcp协议教程
  • Teamviewer连接的电脑无法被控制的一种解决办法
  • win10如何设置通知的时间
  • 电脑如何设置Encrypting File System (EFS)?
  • 热门搜索
    我的世界为什么打不开 口腔溃疡怎么办最快愈合 长寿花怎么养 杨枝甘露怎么做 为什么脸上会长斑 韩语我爱你怎么说 匝怎么读 果的笔顺怎么写 微信怎么设置拍一拍 清道夫鱼为什么会死