立即学习:https://edu.csdn.net/course/play/2300/35870?utm_source=blogtoedu
# 校对集问题
校对集:数据比较的方式
校对集有三种格式
- _bin:binary,二进制比较 ,去除二进制位,一位一位的比较,区分大小写
- _cd:case sensitive,大小写敏感,区分大小写
- _ci:case insensitice,大小写不敏感,不区分大小写
查看所有校对集
show collation;
校对集应用:只有当数据产生比较的时候,校对集才会生效。
对比:使用UTF8的_bin和_ci的不同校对集;
1、-- 创建表使用不同的校对集
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;
2、-- 插入数据
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;
3、-- 比较:根据某个字段进行排序:order by 字段名 [asc|desc]; asc升序,dese降序,默认升序
-- 排序查找
select * from my_collate_bin order by name;
select * from my_collate_ci order by name;
校对集:必须在没有数据之前声明号,如果有了数据,那么再进行校对集修改,那么修改无效。
-- 有数据后修改校对集
alter table my_collate_ci collate = utf8_bin;