utf8mb4_unicode_ci校对规则的_ci是什么意思?底层原理是什么?

简介: utf8mb4_unicode_ci校对规则的_ci是什么意思?底层原理是什么?

在MySQL中,校对规则(Collation)是一种用于比较和排序字符集的算法,用于确定字符串的排序顺序以及在执行各种字符串比较时如何比较字符串的规则。_ci是校对规则的一个后缀,表示在比较字符串时要忽略大小写。

在utf8mb4_unicode_ci校对规则中,_ci表示它是大小写不敏感的。底层原理是它使用了Unicode Collation Algorithm(UCA)来进行排序和比较,该算法将字符映射到Unicode标准中的对应位置,并对字符进行比较,然后根据字符的权重排序。对于_ci后缀,UCA将使用一种称为基本级别的比较方法,其中字母大小写被视为相等,因此会忽略大小写进行比较。

相关文章
|
5月前
|
自然语言处理 Unix Linux
字符编码问题之UTF-16和UCS-2的关系如何解决
字符编码问题之UTF-16和UCS-2的关系如何解决
121 1
|
5月前
字符编码问题之UTF-16支持超过6w多个码点的如何解决
字符编码问题之UTF-16支持超过6w多个码点的如何解决
45 0
|
7月前
|
存储 自然语言处理 搜索推荐
mysql中utf8、utf8mb4和utf8mb4_unicode_ci、utf8mb4_general_ci
mysql中utf8、utf8mb4和utf8mb4_unicode_ci、utf8mb4_general_ci
243 0
|
8月前
|
存储 自然语言处理 关系型数据库
👨‍💻如何使用MySQL存储Emoji表情,UTF-8和UTF-8MB4字符编码有何区别?
👨‍💻如何使用MySQL存储Emoji表情,UTF-8和UTF-8MB4字符编码有何区别?
206 1
|
关系型数据库 MySQL OceanBase
utf8mb4_unicode_ci
utf8mb4_unicode_ci
239 2
|
存储 Windows
“浅入深处“编码历史,字符串编码(ASCII, GBK, ANSI, Unicode, UTF-8编码),为什么记事本默认ANSI编码,Unicode和UTF8有什么区别
“浅入深处“编码历史,字符串编码(ASCII, GBK, ANSI, Unicode, UTF-8编码),为什么记事本默认ANSI编码,Unicode和UTF8有什么区别
159 0
|
关系型数据库 MySQL
MySQL的校对规则设置为 utf8mb4_unicode_ci是干什么的?底层原理是什么?
MySQL的校对规则设置为 utf8mb4_unicode_ci是干什么的?底层原理是什么?
244 0
|
数据库
collate utf8_bin是什么意思
collate utf8_bin是什么意思
|
存储 XML 编解码
计算机基础:Unicode 和 UTF-8 有什么区别
计算机基础:Unicode 和 UTF-8 有什么区别
200 0
计算机基础:Unicode 和 UTF-8 有什么区别
|
存储 人工智能 关系型数据库
utf8字符集下的比较规则
在MySQL中,比较常用的字符集是utf8和utf8mb4。这两个字符集是类似的,utf8是utf8mb3的别名,所以之后在MySQL中提到utf8就意味着使用1~3个字节来表示一个字符,如果大家有使用4字节编码一个字符的情况,比如存储一些emoji表情啥的,需要使用utf8mb4。其实每个字符集下对应着若干个比较规则(也可以翻译为排序规则或校对规则,英文是COLLATE),同一字符集下,使用不同的比较规则会影响字符字段的比较和排序。本文以utf8为例,介绍下常用的几个比较规则的不同。
349 0
utf8字符集下的比较规则

热门文章

最新文章