MySQL学习笔记(8)-校对集问题

校对集:数据比较的方式

校对集有三种格式

    _bin:binary,二进制比较,取出二进制位,一位一位的比较,区分大小写

    _cs: case sensitive,大小写敏感,区分大小写

    _ci: case insensitice,大小写不敏感,不区分大小写

查看数据库所支持的校对集:show collation;


校对集应用:只有当数据产生比较的时候,校对集才会生效。


对比:使用utf8的_bin和_ci来验证不同的校对集的效果

1.创建不同校对集对应的表

use mydatabase;
-- 创建表使用不同的校对集
create table my_collate_bin(
name char(1)
)charset utf8 collate utf8_bin;
create table my_collate_ci(
name char(1)
)charset utf8 collate utf8_general_ci;

-- 插入数据
insert into my_collate_bin values('a'),('A'),('B'),('b');
insert into my_collate_ci values('a'),('A'),('B'),('b');

3.比较:根据某个字段进行排序:order by 字段名 [asc|desc]; asc 升序,desc 降序,默认是升序

select * from my_collate_bin order by name;
select * from my_collate_ci order by name;

校对集:必须再没有数据之前声明好,如果有了数据,那么再进行校对集修改:那么修改无效。

alter table my_collate_ci collate = utf8_bin;
select * from my_collate_ci order by name;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值