首页 > 数据库 >Mysql、Oracle 中将汉字(中文)按照拼音首字母排序

Mysql、Oracle 中将汉字(中文)按照拼音首字母排序

时间:2023-10-25 14:00:53浏览次数:46  
标签:union 金中金 首字母 xx dual Mysql Oracle select

Mysql 将汉字(中文)按照拼音首字母排序

ORDER BY CONVERT(表别名.字段名 USING gbk) COLLATE gbk_chinese_ci ASC;

例子

select * from (
    select '嘉实资产' a, '000830' b
    union
    select '中金鼎益稳健3号单一资产管理计划' a, '002544' b
   union
    select 'xx' a, '002281' b
   union
    select '嘉实资产' a, '300287' b
   union
    select '中金鼎益稳健3号单一资产管理计划' a, '000977' b
   union
    select 'xx' a, 'FG909 ' b
    union
    select '徐州矿务集团有限公司企业年金中金组合' a, '000541 ' b
    union
    select '徐州矿务集团有限公司企业年金中金组合' a, '005541 ' b
) t
order  by CONVERT(t.a USING gbk) COLLATE gbk_chinese_ci ASC,t.b

查询结果

 

Oracle 将汉字(中文)按照拼音首字母排序

ORDER BY nlssort(表别名.字段名, 'NLS_SORT=SCHINESE_PINYIN_M')

例子

select * from (
    select '嘉实资产' a, '000830' b from dual
    union
    select '中金鼎益稳健3号单一资产管理计划' a, '002544' b  from dual
   union
    select 'xx' a, '002281' b  from dual
   union
    select '嘉实资产' a, '300287' b  from dual
   union
    select '中金鼎益稳健3号单一资产管理计划' a, '000977' b  from dual
   union
    select 'xx' a, 'FG909 ' b  from dual
    union
    select '徐州矿务集团有限公司企业年金中金组合' a, '000541 ' b  from dual
    union
    select '徐州矿务集团有限公司企业年金中金组合' a, '005541 ' b from dual
) t
order  by nlssort(t.a, 'NLS_SORT=SCHINESE_PINYIN_M'),t.b

查询结果

 

标签:union,金中金,首字母,xx,dual,Mysql,Oracle,select
From: https://www.cnblogs.com/karrya/p/17787063.html

相关文章

  • ORACLE的Scheduler的时区总结
    在Oracle数据库中,一般人们可能只会关注数据库的时区或会话的时区,但是很少有人会关注Scheduler的时区设置,因为Scheduler的时区设置一般只会影响作业的scheduler和Windows的运行,很多时候,人们往往没有注意到它。这里简单总结一下这个知识点。在Oracle10g/11g中,数据库的scheduler的时......
  • 华为云耀云服务器L实例:初级篇-mysql安装与配置
     华为云耀云服务器L实例是一款可快速部署且易于运维的轻量级云服务器,专为中小企业和入门级开发者打造。它不仅拥有华为云擎天架构的强大性能,还具有多项用户体验优化方案,让用户轻松上手,享受简单上云的乐趣。本产品网址为:https://www.huaweicloud.com/product/hecs-light.html......
  • MySQL--子查询与联合查询
    十二、子查询子查询就是一个查询中包含某一个查询select列名from表名where条件12.1出现在列的位置上selectstudentNamefromstudentswheres.studentNo=r.studentNo这类子查询适合放在列的位置上,适合放在条件的位置上,因为查询结果返回的是多行单列的值select(select......
  • Oracle 19C 基于 Docker 部署
    1、Docker、Docker-Compose安装https://www.cnblogs.com/a120608yby/p/9883175.htmlhttps://www.cnblogs.com/a120608yby/p/14582853.html2、基于Docker-Compose部署Oracle#vimdocker-compose.ymlversion:'3.4'services:oracledb:image:container-reg......
  • oracle查询scn
    概述在数据库的恢复过程,有时我们需要查询scn,分享一下具体的方法解决方案SQL>setnumwidth50SQL>setlinesize150pagesize1000SQL>select'D'file_type,file#,checkpoint_change#,statusfromV$datafile_headerunionallselect'L',group#,first_change#,......
  • MySQL的磁盘利用率的几个因素决定
    数据大小:MySQL存储的数据量是磁盘利用率的一个重要因素。随着数据量的增加,磁盘空间将被更频繁地使用。索引大小:索引是MySQL中用于快速检索数据的数据结构。索引的大小也会影响磁盘利用率。在具有大量索引的数据库中,索引的大小可能会占用相当大的磁盘空间。存储引擎:MySQL支持多......
  • 单位机房 服务器 ORACLE数据库服务器
    开发好的软件系统都部署在服务器上才能访问,服务器是专门伺候大家为大家服务的计算机。上几张图片看下服务器的样子 ......
  • Oracle特殊恢复原理与实战_12 Oracle坏块处理
       http://dbase.cc/2018/05/22/oracle/Oracle%E7%89%B9%E6%AE%8A%E6%81%A2%E5%A4%8D%E5%8E%9F%E7%90%86%E4%B8%8E%E5%AE%9E%E6%88%98-%E8%AF%BE%E7%A8%8B%E5%AD%A6%E4%B9%A0/12_Oracle%E7%89%B9%E6%AE%8A%E6%81%A2%E5%A4%8D%E5%85%A5%E9%97%A8/......
  • 查看Linux 、Apache 、 MySQL 、 PHP 版本的方法
    1.查看linux的内核版本,系统信息,常用的有三种办法:uname-a;more/etc/issue;cat/proc/version;2.查看apache的版本信息如果是通过yum,或者是rpm安装的,可以使用rpm-qa|gerphttpd来查看;还可以通过httpd-v来查询;当然,安装好apache后,可以直接elink回环查看apache的信息。3.查看ph......
  • mysql-部署
    一、清理环境1、检查是否已经安装过mysql,执行命令rpm-qa|grepmysql如果查出来有安装包,使用如下命令清理rpm-e--nodeps`rpm-qa|grepmysql`再次执行查询命令,查看是否删除2、查询所有Mysql对应的文件夹whereismysqlmysql:/usr/bin/mysql/usr/include/mysql......