You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

mysql中文排序规则

MySQL中文排序规则详解

MySQL中,排序是SQL查询中的一个重要部分。常见的排序方式包括按照数字大小、按照字符串首字母、按照日期等排序方式。然而,在中文排序的场景下,MySQL默认的排序方式并不符合中文语言的习惯和规律,因此本文将为大家详解MySQL中文排序规则。

一、MySQL中文排序规则的默认方式

MySQL中,默认的中文排序规则是根据字符集的排序序列,即根据字符的编码值进行排序。比如,GBK编码中,每个中文字符占用两个字节,第一个字节表示汉字的区,第二个字节表示汉字的位。通过比较这两个字节的编码值,即可确定中文字符的大小关系,进而进行排序。

然而,由于中文字符的复杂性和多义性,根据编码值排序能否真正反映中文词汇的排序关系,这是值得商榷的。

二、MySQL中文排序规则的改进

针对中文排序这一问题,MySQL提供了不同的排序选项,以便定制排序规则,适应中文语言的排序习惯。

  1. utf8_general_ci排序规则

MySQL中,utf8_general_ci是最常用的中文排序规则,也是默认的中文排序规则,其中ci表示Case Insensitive,即不区分大小写。

utf8_general_ci在排序中主要有以下特点:

(1)忽略掉所有标点符号,空格和其他特殊字符。

(2)当中文字符的拼音或注音相同时,按照拼音或注音的首字母排序。

(3)对于多音字排序,按照拼音或注音的第一个读音的首字母排序。

下面是一个示例:

-- 创建表,并插入中文数据 CREATE TABLE chinese_chars( id int not null auto_increment primary key, name varchar(10) not null )ENGINE=MYISAM CHARSET=utf8;

INSERT INTO chinese_chars(name) VALUES('程咬金'),('成都'),('成语'),('长征'),('常德'),('常熟');

-- 查询结果按照中文排序 SELECT * FROM chinese_chars order by name;

输出结果如下

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
基于云平台的即开即用、稳定可靠、灵活弹性、易于使用的关系型数据库服务

社区干货

如何查看 MySQL Table Character Set and Collation

# 问题描述MySQL在数据库启动和创建Database的时候都都可以指定Character和Collation,在MySQL创建Table的时候是如何继承Character和Collation的属性的?# 问题分析查看MySQL创建Table的DDL语句中没有显示指定Collation,这时需要我们查看MySQL的配置文件和INFORMATION_SCHEMA CHARACTER_SETS表进行判断。# 解决方案:MySQL通过以下方式选择表字符集和排序规则* 如果创建表的时候显示指定了CHARACTER SET和COLLATE,就会...

如何查看 MySQL Table Character Set and Collation

# 问题描述MySQL在数据库启动和创建Database的时候都都可以指定Character和Collation,在MySQL创建Table的时候是如何继承Character和Collation的属性的?# 问题分析查看MySQL创建Table的DDL语句中没有显示指定Collation,这时需要我们查看MySQL的配置文件和INFORMATION_SCHEMA CHARACTER_SETS表进行判断。# 解决方案:MySQL通过以下方式选择表字符集和排序规则* 如果创建表的时候显示指定了CHARACTER SET和COLLATE,就会使用显...

表设计之数据类型优化 | 社区征文

因为字符集和校对规则(排序规则)使字符比较比整型比较更复杂。比如应该使用 MySQL 内建的类型而不是字符串来存储日期和时间。### 2.3 避免 NULL很多表都包含可为 NULL(空值)的列,即使应用程序并不需要保存 NULL 也是如此,这是因为可为 NULL 是列的默认属性。通常情况下最好指定列为 NOT NULL,除非真的需要存储 NULL 值。 比如在实体中给默认值:![image.png](https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/2f5961962...

精选文章|MySQL深分页优化

**MySQL深分页优化**![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/1499ce77b4ea4b91b806bfab2774e01f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=17149... 没有排序**![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/21612318237442e6a0a3dcd559a326a9~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=17149260...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

mysql中文排序规则-优选内容

如何查看 MySQL Table Character Set and Collation
# 问题描述MySQL在数据库启动和创建Database的时候都都可以指定Character和Collation,在MySQL创建Table的时候是如何继承Character和Collation的属性的?# 问题分析查看MySQL创建Table的DDL语句中没有显示指定Collation,这时需要我们查看MySQL的配置文件和INFORMATION_SCHEMA CHARACTER_SETS表进行判断。# 解决方案:MySQL通过以下方式选择表字符集和排序规则* 如果创建表的时候显示指定了CHARACTER SET和COLLATE,就会...
如何查看 MySQL Table Character Set and Collation
# 问题描述MySQL在数据库启动和创建Database的时候都都可以指定Character和Collation,在MySQL创建Table的时候是如何继承Character和Collation的属性的?# 问题分析查看MySQL创建Table的DDL语句中没有显示指定Collation,这时需要我们查看MySQL的配置文件和INFORMATION_SCHEMA CHARACTER_SETS表进行判断。# 解决方案:MySQL通过以下方式选择表字符集和排序规则* 如果创建表的时候显示指定了CHARACTER SET和COLLATE,就会使用显...
表设计之数据类型优化 | 社区征文
因为字符集和校对规则(排序规则)使字符比较比整型比较更复杂。比如应该使用 MySQL 内建的类型而不是字符串来存储日期和时间。### 2.3 避免 NULL很多表都包含可为 NULL(空值)的列,即使应用程序并不需要保存 NULL 也是如此,这是因为可为 NULL 是列的默认属性。通常情况下最好指定列为 NOT NULL,除非真的需要存储 NULL 值。 比如在实体中给默认值:![image.png](https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/2f5961962...
CreateDBInstance
跨服务访问授权方法如下: 通过 MySQL 控制台授权,详细操作步骤,请参见跨服务访问授权。 调用 CreateServiceLinkedRole(ServiceName 为 rds_mysql)接口完成跨服务授权。 注意 请您尽快完成授权,否则调用 CreateDBInstance 接口时将会报错。 请求类型异步请求。 请求参数名称 类型 是否必选 示例值 描述 InstanceName String 否 test 设置实例的名称。命名规则如下: 不能以数字、中划线(-)开头。 只能包含中文、字母、数字、下...

mysql中文排序规则-相关内容

数据库管理

命名规则如下: 数据库名称在实例内唯一。 长度为 2~64 个字符,且不能为空。 以字母开头,以字母或数字结尾。 由小写字母、数字、下划线(_)或中划线(-)组成。 数据库名称禁用关键词。 字符集 按需选择字符集,当前支持以下几种字符集: utf8 latin1 utf8mb4 ascii 排序规则 当您选择字符集后,默认会显示排序规则,如有其他需求可按需配置。 单击确定。 编辑数据库说明 不支持编辑系统库。 登录云数据库 MySQL 版数据交互台。 在数...

创建实例

命名规则如下: 不能以数字、中划线(-)开头。 只能包含中文、字母、数字、下划线(_)和中划线(-)。 长度需要在 1~128 个字符内。 说明 如果不填实例名称,则实例名称与实例 ID 一致。 兼容版本 支持 MySQL 5.7 或者... 排列。此时,不会再展示按量计费实例。 查看实例信息在实例列表单击您的目标实例进入实例信息页签。 在实例信息页签,您可查看实例的实例信息、配置信息、使用量统计和计费信息。 分类 详细信息 实例信息 实例信息...

创建实例

操作步骤登录云数据库 veDB MySQL 版控制台。 在顶部菜单栏的左上角,选择实例所属的项目和地域。 在实例列表页面,单击创建实例。 在创建实例页面,设置如下实例参数。 类别 参数 说明 数据库类型 数据库的类型,默认为 veDB MySQL 版。 基本信息 兼容版本 实例兼容的 MySQL 版本。当前仅支持 MySQL 8.0。 实例名称 实例名称。命名规则如下: 不能以数字、中划线(-)开头。 只能包含中文、字母、数字、下划线(_)和中划线(-)。 长...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

精选文章|MySQL深分页优化

**MySQL深分页优化**![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/1499ce77b4ea4b91b806bfab2774e01f~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=17149... 没有排序**![picture.image](https://p6-volc-community-sign.byteimg.com/tos-cn-i-tlddhu82om/21612318237442e6a0a3dcd559a326a9~tplv-tlddhu82om-image.image?=&rk3s=8031ce6d&x-expires=17149260...

MySQL 内存相关参数说明

# 前言内存指标是 RDS for MySQL 最重要的指标之一,不合理的参数配置,待优化的 SQL 可能导致内存利用率持续升高,严重时会导致实例 OOM,进而导致主从切换。本文从参数的角度分析 MySQL 内存的组成部分。# sessio... **read_buffer_size & read_rnd_buffer_size**:主要是针对顺序和随机扫描的优化手段,当线程在进行随机/顺序扫描时会先扫描这两块内存区域来避免更多的物理读。这两个参数主要针对 MyISAM 表。5. **sort_buffer_s...

创建实例

命名规则如下: 不能以数字、中划线(-)开头。 只能包含中文、字母、数字、下划线(_)和中划线(-)。 长度需要在 1~128 个字符内。 说明 如果不填实例名称,则实例名称与实例 ID 一致。 兼容版本 支持 MySQL 5.7 或者 MySQL 8.0。 实例类型 支持双节点类型。双节点类型为一主一备经典架构、可添加多个只读节点。 规格类型 支持共享型和通用型两种规格类型。 共享型:独享被分配的内存和存储资源,与同一物理机上的其他共享规格实例共...

CreateDBEndpoint

调用 CreateDBEndpoint 接口为指定 veDB MySQL 实例创建连接终端。 请求类型同步请求。 请求参数名称 类型 是否必选 示例值 描述 InstanceId String 是 vedbm-2pf2xk5v**** 实例 ID。 说明 您可以调用 Describ... 设置规则如下: 不能以数字或中划线(-)开头。 只能包含中文、字母、数字、下划线(_)和中划线(-)。 长度为 1~64 个字符。 Description String 否 这是对连接终端的描述 连接终端的描述信息。长度不能超过 200 个字符...

配置 MySQL 数据源

仅支持中文,英文,数字,“_”,100个字符以内。 参数配置 RDS 实例 ID 火山引擎云数据库MySQL的实例ID,下拉选择。 数据库名 下拉选择实例下,已创建的 MySQL 数据库名称。 用户名 有权限访问数据库的用户名信息... 移动\删除字段:您也可以根据需要移动字段映射顺序或删除字段。说明 对于来源是分库分表形式时,会拉取配置的第一张表的元数据信息。 4.4 DSL 配置说明MySQL 数据源支持使用脚本模式(DSL)的方式进行配置。在某...

MySQL 统计信息相关参数解析

mysql> show create table test0407;+----------+------------------------------| Table | Create Table |+----------+-----------------------------| test0407 | CREATE TABLE `test0407` ( `id` int(11) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8 STATS_PERSISTENT=0 |+----------+---------------------------+1 row in set (0.04 sec)```### 非持久化统计信息搜集规则有如下几...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

2核4G共享型云服务器

Intel CPU 性能可靠,不限流量,学习测试、小型网站、小程序开发推荐,性价比首选
86.00/1908.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

数据智能知识图谱
火山引擎数智化平台基于字节跳动数据平台,历时9年,基于多元、丰富场景下的数智实战经验打造而成
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询