位置: 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为古彝文识别赋能(传承古老文化)

  • 钉钉可以同时几个班一起上课吗

    钉钉可以同时几个班一起上课吗

  • 苹果微信如何关闭夜间模式(苹果微信如何关掉感应黑屏模式)

    苹果微信如何关闭夜间模式(苹果微信如何关掉感应黑屏模式)

  • 单反拍视频伤机器吗(单反拍视频伤快门吗)

    单反拍视频伤机器吗(单反拍视频伤快门吗)

  • nova7和se区别(nova7和nova7 se的区别)

    nova7和se区别(nova7和nova7 se的区别)

  • 华为手机设置自动开关机(华为手机设置自动通话录音)

    华为手机设置自动开关机(华为手机设置自动通话录音)

  • oppofindx2有没有耳机孔(OPPOfindx2有没有双扬声器)

    oppofindx2有没有耳机孔(OPPOfindx2有没有双扬声器)

  • 钉钉显示两个名怎么办(钉钉显示两个名字)

    钉钉显示两个名怎么办(钉钉显示两个名字)

  • 手机wps中怎么加视频(手机wps中怎么加边框)

    手机wps中怎么加视频(手机wps中怎么加边框)

  • 快手可以有几个管理员(快手可以有几个实名账号)

    快手可以有几个管理员(快手可以有几个实名账号)

  • rx580相当于什么显卡(rx450h)

    rx580相当于什么显卡(rx450h)

  • 苹果手机微信记录怎么到华为手机(苹果手机微信记录怎么转移到新苹果手机)

    苹果手机微信记录怎么到华为手机(苹果手机微信记录怎么转移到新苹果手机)

  • 华为rioal00是麦芒4吗(rioal00华为麦芒)

    华为rioal00是麦芒4吗(rioal00华为麦芒)

  • iphone怎么换qq主题(苹果怎么换qq)

    iphone怎么换qq主题(苹果怎么换qq)

  • vivo怎么查看下载记录(VIVO怎么查看下载记录)

    vivo怎么查看下载记录(VIVO怎么查看下载记录)

  • 华为备忘录如何取消时间(华为备忘录如何导入小米手机)

    华为备忘录如何取消时间(华为备忘录如何导入小米手机)

  • 手机可以识别假币吗(手机可以识别假货吗)

    手机可以识别假币吗(手机可以识别假货吗)

  • vivo通话设置在哪里(vivo手机通话设置在哪里)

    vivo通话设置在哪里(vivo手机通话设置在哪里)

  • 微信多久能自动解冻(微信多开)

    微信多久能自动解冻(微信多开)

  • 边缘云是什么(边缘云 云边缘)

    边缘云是什么(边缘云 云边缘)

  • 微信怎么查看共同好友(微信怎么查看共享位置记录)

    微信怎么查看共同好友(微信怎么查看共享位置记录)

  • 拼多多极速退款买家不退货怎么办(拼多多极速退款在哪里设置的)

    拼多多极速退款买家不退货怎么办(拼多多极速退款在哪里设置的)

  • oppor17电池耐用吗(oppor17电池耐不耐用)

    oppor17电池耐用吗(oppor17电池耐不耐用)

  • 拼多多哪里邀请新人(拼多多哪里邀请好友开通月卡)

    拼多多哪里邀请新人(拼多多哪里邀请好友开通月卡)

  • xshare设备是什么(share 设备)

    xshare设备是什么(share 设备)

  • game boost开还是不开(game boost开不开)

    game boost开还是不开(game boost开不开)

  • 小米8有小爱语音助手吗(小米8小爱语音唤醒怎么设置)

    小米8有小爱语音助手吗(小米8小爱语音唤醒怎么设置)

  • iphone静音键自动跳(iphone静音键自动跳怎么设置)

    iphone静音键自动跳(iphone静音键自动跳怎么设置)

  • qq怎么防撤回(qq访客记录删除了怎么恢复)

    qq怎么防撤回(qq访客记录删除了怎么恢复)

  • app开发商标准有哪些(开发商城app需要什么证件)

    app开发商标准有哪些(开发商城app需要什么证件)

  • 如何在织梦DEDECMS上运行php代码和mysql语句(如何在织梦中设置图片加文字)

    如何在织梦DEDECMS上运行php代码和mysql语句(如何在织梦中设置图片加文字)

  • 汇算清缴时纳税调整表调增金额是怎么算出来的
  • 城市维护建设税的计税依据是什么
  • 发票签字有什么用
  • 合伙企业缓交所得税
  • 如何查看增值税申报表
  • 增值税扣费
  • 企业出资怎么填写
  • 合伙企业投资收益
  • 销售费用与管理的关系
  • 哪些属于不动产权
  • 员工食堂餐费可以报销吗
  • 没有ca证书怎么连接wifi加密设备
  • 建筑企业增值税怎么算
  • 年终奖有计算公式吗
  • 金税三期申报代扣代缴增值税流程步骤分析
  • 发票认证抵扣了还能冲红么
  • 制造企业搬运系统设计重组带来新活力
  • 小规模纳税人税率有几种
  • 金融业的增值税
  • 2021印花税零申报怎么报
  • 2016年的发票可以用到什么时候
  • 企业收入准则的主要内容
  • 单位转让专利技巧和方法
  • 开票含税和不含税怎么切换视频讲解
  • 承租人交付房屋标准
  • 3%减按2%征收增值税政策
  • 网络打印机找不到网络路径
  • window10发现威胁怎么办
  • php多维数组合并相同key
  • 注销税务时其他应付款的账务处理
  • vue 页面生成pdf
  • 交纳印花税
  • 回迁房办理房产证契税怎么交
  • php获取文章内容图片
  • 一般纳税人简易计税会计分录
  • javascript速成
  • php实现批量删除
  • 专票认证期限多长时间
  • 应纳税所得额调整金额怎么算
  • 购买的商品作为赠品怎么入账
  • php安装不了
  • 平行结转分步法的特点
  • 网红产品的推广文案
  • 企业账户在银行买黄金可以开发票吗
  • 免税销售额和本期免税额
  • 需要登记的权利
  • 普通发票的后续怎么开
  • 向税务局缴纳工会经费的没计提
  • 政府预算会计要素包括
  • 开办费企业所得税处理
  • 来料加工账务处理案例
  • 企业清算处置固定资产
  • 房屋租赁违约金怎么规定
  • 开具的增值税专用发票上注明的价款含税吗
  • 资固定资产清理
  • 固定资产清理如何计算
  • 短期借款计提利息计入什么科目
  • 本年利润为什么是负数
  • mysql触发事件
  • Vista下WMC不能播放RMVB解决办法
  • win7自带播放器怎么打开
  • mac购买建议
  • node 包管理
  • 批处理删除空文件夹
  • jquery注释有哪几种
  • jquery validation
  • linux如何批量执行脚本
  • fastcgi iis
  • unity连接
  • 使用jquery
  • javascript怎么编写
  • 税务局与稽查局哪个好
  • 贵州省地方税务局历任纪检组长马平
  • 我们要什么行政执法监督机制和能力建设严格落实行政
  • 北京市国家税务局官网手机app
  • 卷票是什么票
  • 什么情况适用简易诉讼程序
  • 税务志愿者服务队
  • 交医保显示已申报怎么办
  • 江苏省国税客服电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设