Home / cs-notes / Architecture / Components / Database / MySQL / questions / 字符集选择与比较
- 最初的疑问
- utf8_general_ci 中的 ci 是什么意思 ?
https://www.codenong.com/766809/
- 用于 mysql 字符串排序
- utf8_general_ci 比 utf8_unicode_ci 效率高
- utf8_unicode_ci 基于 unicode 字符串比较,算法更复杂、相对更准确
https://zhuanlan.zhihu.com/p/34261663
- ci: case insensitive
- cs: case sensitive
- bin: binary, 基于二进制数据比较
- 通常推荐使用 utf8_general_ci
https://www.cnblogs.com/amyzhu/p/9595665.html
- utf8mb4
- since MySQL 5.5.3
- 支持BMP(Basic Multilingual Plane,基本多文种平面)和补充字符
- 最多 4 字节
- utf8
- 标准 utf8 1~4 字节
- mysql 实现为 3 字节,所以不全,emoji 及 生僻字不支持