史上最简单的 MySQL 教程(八)「校对集问题」

温馨提示:本系列博文已经同步到 GitHub,地址为「mysql-tutorial」,欢迎感兴趣的童鞋StarFork,纠错。

校对集问题

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

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

  • _bin:binary,二进制比较,区分大小写;
  • _cs:case sensitive,大小写敏感,区分大小写;
  • _ci:case insensitive,大小写不敏感,不区分大小写。

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

10

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

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

-- 创建两张使用不同校对集的表
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. 然后,分别向这两张表中添加数据:

-- 向表中添加数据
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;
13

下面,咱们根据表中的某个字段(在这里my_collate_binmy_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;
14

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

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


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


———— ☆☆☆ —— 返回 -> 史上最简单的 MySQL 教程 <- 目录 —— ☆☆☆ ————

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 zhuanlan_guanli@qq.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏计算机视觉与深度学习基础

Leetcode 71 Simplify Path

Given an absolute path for a file (Unix-style), simplify it. For example, pat...

2105
来自专栏Albert陈凯

【Hadoop】三句话告诉你 mapreduce 中MAP进程的数量怎么控制?

原文地址: MapReduce Input Split(输入分/切片)详解 结论: 经过以上的分析,在设置map个数的时候,可以简单的总结为以下几点: (...

3118
来自专栏后端之路

从lombok想到的行号问题

背景 lombok 是近几年来声名鹊起的java效率提升利器,对于lombok一直只是在某些开源项目中可以看到。在自身的开发中并未使用。在github上确实使用...

2488
来自专栏更流畅、简洁的软件开发方式

Step By Step 一步一步写网站[1] —— 填加数据(二)

(这个是我认真思考并精心写的,能不能算作高质量我就不敢说了) 建议先看一下第一篇: https://cloud.tencent.com/developer/a...

17210
来自专栏Grace development

集成TP分页类代码

392
来自专栏腾讯数据库技术

比ls快8倍?百万级文件遍历的奇技淫巧

2944
来自专栏漫漫深度学习路

tensorflow:自定义op简单介绍

tensorflow 自定义 op 本文只是简单的翻译了 https://www.tensorflow.org/extend/adding_an_op 的简单部...

2887
来自专栏WD学习记录

8-18 Android学习ing

getSharedPreferences("1234", Context.MODE_PRIVATE)  之中的名字不能带有后缀名,比如1234.xml

774
来自专栏陈本布衣

SQLite 带你入门

SQLite数据库相较于我们常用的Mysql,Oracle而言,实在是轻量得不行(最低只占几百K的内存)。平时开发或生产环境中使用各种类型的数据库,可能都需要...

3415
来自专栏小灰灰

Java 动手写爬虫: 二、 深度爬取

第二篇 前面实现了一个最基础的爬取单网页的爬虫,这一篇则着手解决深度爬取的问题 简单来讲,就是爬了一个网页之后,继续爬这个网页中的链接 1. 需求背景 背景...

40010

扫描关注云+社区