1、准确性 utf8mb4_unicode_ci 是基于标准的 Unicode 来排序和比较,能够在各种语言之间精确排序 utf8mb4_general_ci 没有实现 Unicode 排序规则,在遇到某些特殊语言或者字符集,排序结果可能不一致。 但是绝大多数情况下,这些特殊字符的顺序并不需要那么精确。 2、性能 utf8mb4_general_ci 在比较和排序的时候更...
utf8mb4_unicode_ci 和 utf8mb4_general_ci 1、准确性 utf8mb4_unicode_ci 是基于标准的 Unicode 来排序和比较,能够在各种语言之间精确排序 utf8mb4_general_ci 没有实现 Unicode 排序规则,在遇到某些特殊语言或者字符集,排序结果可能不一致。 但是绝大多数情况下,这些特殊字符的顺序并不需要那么精确。 2、...
在utf8mb4_general_ci排序规则下,查询会匹配到小写的"apple",大写的"Apple"和"APPLE",因为它不区分大小写。 总结对比 适用场景: 如果你的应用对字符的大小写有严格要求,比如用户登录时输入用户名、密码等,需要精确匹配大小写,可以使用utf8mb4_bin。 如果你希望用户输入时不区分大小写,或者对不同的语言字符做更...
ci是case insensitive的缩写,意思是大小写不敏感,即忽略大小写。 cs是case sensitive的缩写,意思是大小写敏感,即区分大小写。 还有一种是bin,它是将字符串中的每一个字符用二进制数据存储,区分大小写。 使用最多的是 utf8mb4_general_ci(默认的)和 utf8mb4_bin。 我们的brand表,使用的COLLATE是utf8mb4_gen...
utf8mb4_0900_ai_ci 推荐用 utf8mb4_unicode_ci,但是用 utf8mb4_general_ci 也没啥问题。 MySQL 8.0 默认的是 utf8mb4_0900_ai_ci,属于 utf8mb4_unicode_ci 中的一种,具体含义如下: uft8mb4 表示用 UTF-8 编码方案,每个字符最多占 4 个字节。
utf8mb4_general_ci `utf8mb4_general_ci` 是 MySQL 数据库中的一个字符集排序规则(collation),它支持存储任何有效的 UTF-8 多字节字符,包括表情符号(emoji)和其他 4 字节字符。排序规则 `ci` 在结尾的 `ci` 代表大小写不敏感(case-insensitive)。
utf8mb4_general_ci:由于它没有实现复杂的 Unicode 排序规则,因此在比较和排序时通常更快。 utf8mb4_0900_ai_ci:为了实现更准确的排序,它可能使用了稍微复杂的排序算法。然而,在大多数情况下,这种性能差异可能并不明显。 简单总结 utf8mb4_0900_ai_ci 提供了更准确的排序功能,特别是在处理涉及多种语言和特殊...
utf8mb4字符集的默认排序规则是utf8mb4_general_ci。 utf8mb4_general_ci排序规则是一个大小写不敏感的排序规则,这意味着在比较两个字符串时,大小写形式相同的字符会被视为相同。例如,'A'和'a'在utf8mb4_general_ci排序规则下会被视为相同。 此外,utf8mb4_general_ci排序规则还支持Unicode字符的排序。
utf8mb4_general_ci:由于它没有实现复杂的 Unicode 排序规则,因此在比较和排序时通常更快。 utf8mb4_0900_ai_ci:为了实现更准确的排序,它可能使用了稍微复杂的排序算法。然而,在大多数情况下,这种性能差异可能并不明显。 简单总结 utf8mb4_0900_ai_ci 提供了更准确的排序功能,特别是在处理涉及多种语言和特殊...
utf8mb4_0900_ai_ci和utf8mb4_general_ci都是MySQL针对utf8mb4编码的排序规则。 对于utf8mb4_0900_ai_ci来说,0900代表Unicode 9.0的规范,ai表示accent insensitivity,也就是“不区分音调”,而ci表示case insensitivity,也就是“不区分大小写”。