位置: IT常识 - 正文

MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin、utf8mb4_0900_ai_ci和存储字符集 utf8 和 utf8mb4(mysql的排序规则)

编辑:rootadmin
MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin、utf8mb4_0900_ai_ci和存储字符集 utf8 和 utf8mb4

推荐整理分享MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin、utf8mb4_0900_ai_ci和存储字符集 utf8 和 utf8mb4(mysql的排序规则),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql排序规则选什么,mysql排序规则是什么,mysql 排序字段,mysql如何进行数据的排序,mysql数据库排序,mysql的排序函数,mysql排序规则选什么,mysql 排序算法,内容如对您有帮助,希望把文章链接给更多的朋友!

在创建数据库时,我们经常会需要填写数据库名、字符集、排序规则; 而本文主要讲述常用的存储字符集 utf8 和 utf8mb4;排序字符集 utf8mb4_unicode_ci 和 utf8mb4_general_ci、utf8mb4_bin、utf8mb4_0900_ai_ci

一般我本人创建创建数据库通常排序规则都使用utf8mb4_general_ci,因为对特殊字符的顺序并不需要那么精确

1、存储字符集 utf8 和 utf8mb4utf8 是 Mysql 中的一种字符集,只支持最长三个字节的 UTF-8 字符,也就是 Unicode 中的基本多文本平面。要在 Mysql 中保存 4 字节长度的 UTF-8 字符,需要使用 utf8mb4 字符集,但只有 5.5.3 版本以后的才支持。我觉得,为了获取更好的兼容性,应该总是使用 utf8mb4 而非 utf8. 对于 CHAR 类型数据,utf8mb4 会多消耗一些空间,根据 Mysql 官方建议,使用 VARCHAR 替代 CHAR。

总结: UTF-8是使用1~4个字节,一种变长的编码格式,字符编码。mb4即 most bytes 4,使用4个字节来表示完整的UTF-8。

mysql的 utf8 编码最大字符长度为 3 字节,如果遇到 4 字节的宽字符就会插入异常了。三个字节的 UTF-8 最大能编码的 Unicode 字符是 0xffff,也就是 Unicode 中的基本多文种平面(BMP)。也就是说,任何不在基本多文本平面的 Unicode字符,都无法使用 Mysql 的 utf8 字符集存储。包括 Emoji 表情(Emoji 是一种特殊的 Unicode 编码,常见于 ios 和 android 手机上),和很多不常用的汉字,以及任何新增的 Unicode 字符等等。

MySQL的utf8是utfmb3,只有三个字节,节省空间但不能表达全部的UTF-8。所以推荐使用utf8mb4(是utf8的超集并完全兼容它,能够用四个字节存储更多的字符,这几乎包含了世界上所有能看到见的语言。)。

MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin、utf8mb4_0900_ai_ci和存储字符集 utf8 和 utf8mb4(mysql的排序规则)

2、排序字符集 utf8mb4_unicode_ci 和 utf8mb4_general_ci、utf8mb4_bin、utf8mb4_0900_ai_ci

MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin ci即case insensitive,不区分大小写。 utf8mb4_unicode_ci: 是基于标准的Unicode来排序和比较,能够在各种语言之间精确排序,Unicode排序规则为了能够处理特殊字符的情况,实现了略微复杂的排序算法。 utf8mb4_general_ci: 是一个遗留的 校对规则,不支持扩展,它仅能够在字符之间进行逐个比较。utf8_general_ci校对规则进行的比较速度很快,但是与使用 utf8mb4_unicode_ci的校对规则相比,比较正确性较差。 utf8mb4_bin: 将字符串每个字符用二进制数据编译存储,区分大小写,而且可以存二进制的内容。 utf8mb4_0900_ai_ci: MySQL 8.0 默认的是 utf8mb4_0900_ai_ci,属于 utf8mb4_unicode_ci 中的一种,具体含义如下: uft8mb4 表示用 UTF-8 编码方案,每个字符最多占 4 个字节。 0900 指的是 Unicode 校对算法版本。(Unicode 归类算法是用于比较符合 Unicode 标准要求的两个 Unicode 字符串的方法)。 ai 指的是口音不敏感。也就是说,排序时 e,è,é,ê 和 ë 之间没有区别。 ci 表示不区分大小写。也就是说,排序时 p 和 P 之间没有区别。 utf8mb4 已成为默认字符集,在 MySQL 8.0.1 及更高版本中将 utf8mb4_0900_ai_ci 作为默认排序规则。以前,utf8mb4_general_ci 是默认排序规则。由于 utf8mb4_0900_ai_ci 排序规则现在是默认排序规则,因此默认情况下新表格可以存储基本多语言平面之外的字符。现在可以默认存储表情符号。如果需要重音灵敏度和区分大小写,则可以使用 utf8mb4_0900_as_cs 代替。

2.1、经常使用的 utf8mb4_unicode_ci 和 utf8mb4_general_ci 的区别

1、准确性

utf8mb4_unicode_ci 是基于标准的 Unicode 来排序和比较,能够在各种语言之间精确排序

utf8mb4_general_ci 没有实现 Unicode 排序规则,在遇到某些特殊语言或者字符集,排序结果可能不一致。

但是绝大多数情况下,这些特殊字符的顺序并不需要那么精确。

2、性能

utf8mb4_general_ci 在比较和排序的时候更快

utf8mb4_unicode_ci 在特殊情况下,Unicode 排序规则为了能够处理特殊字符的情况,实现了略微复杂的排序算法。

但是在绝大多数情况下,不会发生此类复杂比较。相比选择哪一种 collation,使用者更应该关心字符集与排序规则在 db 里需要统一。

推荐用 utf8mb4_unicode_ci,但是用 utf8mb4_general_ci 也没啥问题.

本文链接地址:https://www.jiuchutong.com/zhishi/299941.html 转载请保留说明!

上一篇:谁能真正替代你?AI辅助编码工具深度对比(chatGPT/Copilot/Cursor/New Bing)(谁能代替你啊)

下一篇:焕新古文化传承之路,AI为古彝文识别赋能(传承古老文化)

  • 华为荣耀v20支持鸿蒙系统吗(华为荣耀v20支持扩展存储卡)

    华为荣耀v20支持鸿蒙系统吗(华为荣耀v20支持扩展存储卡)

  • airpods叮咚响(airpodspro叮咚响)

    airpods叮咚响(airpodspro叮咚响)

  • 快手限制了播放量(快手播放限制多久才可以解除)

    快手限制了播放量(快手播放限制多久才可以解除)

  • nova3外屏可以单独换吗(华为nova3e换外屏)

    nova3外屏可以单独换吗(华为nova3e换外屏)

  • ipad限制使用时间	(ipad限制使用时间软件推荐)

    ipad限制使用时间 (ipad限制使用时间软件推荐)

  • 打印机中间部分变白了(打印机中间部分变白了惠普打印机激光器的清洗)

    打印机中间部分变白了(打印机中间部分变白了惠普打印机激光器的清洗)

  • 苹果快捷指令可以添加门禁卡吗(苹果快捷指令可以干嘛)

    苹果快捷指令可以添加门禁卡吗(苹果快捷指令可以干嘛)

  • vivo手机微信安装失败(VIVO手机微信安装失败)

    vivo手机微信安装失败(VIVO手机微信安装失败)

  • iphonex全黑模式如何开启(iphonex专属全黑模式)

    iphonex全黑模式如何开启(iphonex专属全黑模式)

  • 淘宝和淘宝特价版里面的东西质量一样吗(淘宝跟淘宝特价)

    淘宝和淘宝特价版里面的东西质量一样吗(淘宝跟淘宝特价)

  • 路由器有使用年限吗(路由器使用年限是几年)

    路由器有使用年限吗(路由器使用年限是几年)

  • 如何将word文档保存到桌面(如何将word文档转换成excel表格)

    如何将word文档保存到桌面(如何将word文档转换成excel表格)

  • 苹果手机来电自动接听怎么回事(苹果手机来电自动免提怎么关掉)

    苹果手机来电自动接听怎么回事(苹果手机来电自动免提怎么关掉)

  • word文档字竖着排列(word文档字竖着怎么放到中间)

    word文档字竖着排列(word文档字竖着怎么放到中间)

  • 手机里的白名单什么意思(手机里的白名单和黑名单是什么意思)

    手机里的白名单什么意思(手机里的白名单和黑名单是什么意思)

  • m621m是魅蓝几(魅蓝m621q是什么版本)

    m621m是魅蓝几(魅蓝m621q是什么版本)

  • win10的运行在哪里打开(win10里的运行在哪)

    win10的运行在哪里打开(win10里的运行在哪)

  • 手机不小心恢复出厂设置了怎么办(手机不小心恢复出厂设置了微信聊天记录怎么恢复)

    手机不小心恢复出厂设置了怎么办(手机不小心恢复出厂设置了微信聊天记录怎么恢复)

  • 小米6怎么调显示时间(小米怎么调显示网速)

    小米6怎么调显示时间(小米怎么调显示网速)

  • 表格中怎么插虚线(怎么在表格添加虚线)

    表格中怎么插虚线(怎么在表格添加虚线)

  • 小爱同学声纹识别设置

    小爱同学声纹识别设置

  • 恢复出厂怎样找回照片(恢复出厂设置怎么找)

    恢复出厂怎样找回照片(恢复出厂设置怎么找)

  • 苹果能刷公交卡吗(苹果刷公交卡为什么需要输入密码)

    苹果能刷公交卡吗(苹果刷公交卡为什么需要输入密码)

  • 群聊天记录怎么分享(群聊天记录怎么打包发给别人)

    群聊天记录怎么分享(群聊天记录怎么打包发给别人)

  • 手机屏幕lcd和led的区别(手机屏幕lcd和led显示器的区别)

    手机屏幕lcd和led的区别(手机屏幕lcd和led显示器的区别)

  • 橡皮树的扦插方法(图文)(橡皮树的扦插方法和注意事项)

    橡皮树的扦插方法(图文)(橡皮树的扦插方法和注意事项)

  • 装修行业小规模纳税人增值税专票
  • 企业所得税年报过了申报期还能修改吗
  • 应付职工薪酬工资贷方有余额要怎么调整
  • 物业管理水电费税率
  • 固定资产贷款资料清单
  • 航运(集团)招聘
  • 政府补贴装修费怎么算
  • 结转周转材料成本差异会计分录
  • 特许权使用费如何确认收入
  • 免抵税额是否能抵销项税额呢?
  • 营改增后企业所得税
  • 抵扣税款是什么意思呢
  • 航天服务费530是什么?
  • 增值税发票查验平台怎么查询发票
  • 房地产企业回迁房税收规定
  • 税控设备实际抵减增值税时如何做分录?
  • 现金支票存根会计要签字吗
  • 预付保险费属于什么会计科目
  • 4s店贷款服务费是什么
  • 管理费用企业所得税标准
  • 快启动u盘怎么打开
  • window10最新20h2
  • 非一般纳税人可以抵扣吗
  • bios怎么关
  • u盘格式化后怎么还原数据
  • 产品工人工资会扣税吗
  • 最多人用的操作系统
  • 辉柏嘉彩铅一共多少色
  • php数据库语句
  • 会计分录的表现形式有
  • 管理费用怎么记凭证
  • 出口货物退免税证明办税进度
  • codeigniter 教程
  • 无形资产使用寿命不确定需要摊销吗
  • php出现错误代码怎么办
  • 双分录怎么做
  • 确认收入需要哪些资料
  • php 遍历字符串
  • 长期负债和应付账款
  • 苹果系统推送通知
  • bg命令 将作业放到后台运行
  • more命令 查找
  • 帝国cms手机模板是什么
  • wordpress怎么删除文章
  • mongodb的分片集群的组成部分
  • vuex数据持久化
  • 查看db2状态
  • 一张发票能分开做帐务处理吗?
  • 我国耕地占用税使用的税率为
  • 发票不按实际数量单价开 但金额一致
  • 房产契税什么时候退税
  • 待处理财产损溢属于什么类科目?
  • 应付职工薪酬工作流程
  • 个体工商户纳税申抿
  • 某劳务派遣公司与某传媒公司签订
  • 新准则融资租赁承租人的会计处理
  • MySQL下载安装视频
  • mysql文件存储路径设置
  • win2000系统禁止ping
  • 滑动关闭电脑功能按键在哪找
  • win1020h2版好不好
  • 启用guest用户
  • win8引导盘
  • window10稳定版
  • linux系统怎么配置路由
  • w8系统一键恢复
  • win10交接wifi
  • linux系统怎么关闭137端口
  • javascript entries
  • node.js中的http.response.addTrailers方法使用说明
  • vim命令详解
  • nodejs基础教程
  • canvas+javascript
  • Android 使用 ASM 修改函数
  • javascript面向对象精要pdf
  • 快速进入屏保的快捷键
  • jquery获取当前元素是第几个元素
  • 企业所得税汇总纳税备案表
  • 国家税务局机打发票可以报销吗
  • 税法难吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设