LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 315|回复: 0

MySQL校对集问题

[复制链接]
发表于 2024-1-10 22:41:36 | 显示全部楼层 |阅读模式
校对集,其实就是数据的比较方式。

校对集,共有三种,分别为:

_bin:binary,二进制比较,区分大小写;
_cs:case sensitive,大小写敏感,区分大小写;
_ci:case insensitive,大小写不敏感,不区分大小写。
查看(全部)校对集 --> 基本语法:show collation;


如上图所示,咱们创建了两张表,分别为my_collate_bin和my_collate_ci,其校对集分别为_bin和_ci. 然后,分别向这两张表中添加数据:

-- 向表中添加数据
insert into my_collate_bin values ('a'),('A'),('B'),('b');
insert into my_collate_ci values ('a'),('A'),('B'),('b');
再分别查看两张表中的数据:

-- 查看表中的数据
select * from my_collate_bin;
select * from my_collate_ci;


下面,咱们根据表中的某个字段(在这里my_collate_bin和my_collate_ci都仅有一个字段)进行排序,其基本语法为:

order by + 字段名 + [asc/desc];
其中,asc表示升序,desc表示降序,默认为升序。执行如下 SQL 语句:

-- 排序比较
select * from my_collate_bin order by name;
select * from my_collate_ci order by name;


如上图所示,显然校对集生效啦!

此外,咱们需要特别注意的是: 校对集必须在没有数据之前声明好,如果有了数据之后,再进行校对集的修改,则修改无效。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表