MySQL 教程之校对集问题


本文摘自PHP中文网,作者藏色散人,侵删。

本篇文章主要给大家介绍mysql中的校对集问题,希望对需要的朋友有所帮助!

推荐参考教程:《mysql教程》

校对集问题

校对集,其实就是数据的比较方式。

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

  • _bin:binary,二进制比较,区分大小写;

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

  • _ci:case insensitive,大小写不敏感,不区分大小写。

查看(全部)校对集 ?C> 基本语法:show collation;

10

如上图所示,MySQL 数据库支持百多种校对集。

接下来,咱们在一起看看校对集的应用,因为只有当数据进行比较的时候,校对集才会生效。在这里,咱们用utf8_bin_ci两种校对集进行比较:

1

2

3

4

5

-- 创建两张使用不同校对集的表create table my_collate_bin(

    name char(10)

)charset utf8 collate utf8_bin;create table my_collate_ci(

    name char(10)

)charset utf8 collate utf8_general_ci;

11

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

1

-- 向表中添加数据insert into my_collate_bin values ('a'),('A'),('B'),('b');insert into my_collate_ci values ('a'),('A'),('B'),('b');

再分别查看两张表中的数据:

1

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

13

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

1

order by + 字段名 + [asc/desc];

其中,asc表示升序,desc表示降序,默认为升序。执行如下 SQL 语句:

1

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

14

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

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

温馨提示:用符号[]括起来的内容,表示可选项;符号+,则表示连接的意思

以上就是MySQL 教程之校对集问题的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

mysql 教程之校对集问题

更多相关阅读请进入《MySQL校对集》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...