Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 什么';utf8_unicode_ci和utf8mb4_0900_ai_ci之间的区别是什么_Mysql_Unicode - Fatal编程技术网

Mysql 什么';utf8_unicode_ci和utf8mb4_0900_ai_ci之间的区别是什么

Mysql 什么';utf8_unicode_ci和utf8mb4_0900_ai_ci之间的区别是什么,mysql,unicode,Mysql,Unicode,mysql中的utf8mb4\u 0900\u ai\u ci和utf8\u unicode\u ci数据库文本编码之间有什么区别(特别是在性能方面) 更新: utf8mb4_unicode_ci和utf8mb4_0900_ai_ci之间存在类似的差异 编码是相同的。也就是说,字节看起来是一样的 字符集是不同的。utf8mb4具有更多字符 排序规则(如何进行比较)是不同的 表现不同,但很少有关系 utf8\u unicode\u ci表示字符集utf8,它只包括1、2和3字节的UTF-8字符。

mysql中的
utf8mb4\u 0900\u ai\u ci
utf8\u unicode\u ci
数据库文本编码之间有什么区别(特别是在性能方面)

更新:

utf8mb4_unicode_ci和utf8mb4_0900_ai_ci之间存在类似的差异

  • 编码是相同的。也就是说,字节看起来是一样的
  • 字符集是不同的。utf8mb4具有更多字符
  • 排序规则(如何进行比较)是不同的
  • 表现不同,但很少有关系
utf8\u unicode\u ci
表示
字符集utf8
,它只包括1、2和3字节的UTF-8字符。因此,它排除了大多数表情符号和一些汉字

utf8mb4\u unicode\u ci
表示
字符集utf8mb4
是4字节
字符集utf8mb4
对应的
排序规则

Unicode组织多年来一直在改进该规范。以下是从其“版本”到MySQL排序规则的映射:

4.0   _unicode_
5.20  _unicode_520_
9.0   _0900_
大多数差异将出现在大多数人从未遇到的领域。举个例子:在某个时刻,一个改变允许表情符号以某种方式被区分和排序

后缀():

性能:

_bin         -- simple, fast
_general_ci  -- fails to compare multiple letters; eg ss=ß, so somewhat fast
...          -- slower
_900_        -- (8.0) much faster because of a rewrite

但是:排序速度通常是查询中性能问题中最小的一个<代码>索引
连接
、子查询、表扫描等对性能更为关键。

这些是排序规则,用于控制数据排序方式
mbX
表示多字节(以X字节存储一个字符),
0900
是排序算法,
ai
表示不区分重音,
ci
表示不区分大小写
utf8mb4_unicode_ci
utf8mb4_0900_ai_ci
?@KamilKiełczewski-是。@bughteroper-utf8mb4的最大字符是4字节。这适用于所有utf8mb4排序规则(“utf8mb4_*,包括那一个)。@Stalinko-来自OracleOpenWorld。一位开发人员指出,8.0对排序规则代码进行了大量重写,并指出它要快得多。(我还没有设计一个实际的测试用例来验证或量化加速。)@斯大林科-测量转换前后的时间。并让我们知道。
_bin         -- simple, fast
_general_ci  -- fails to compare multiple letters; eg ss=ß, so somewhat fast
...          -- slower
_900_        -- (8.0) much faster because of a rewrite