国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

MySQL中utf8mb4排序規則示例

瀏覽:38日期:2023-10-17 18:08:00

在MySQL中常見的utf8mb4排序規則有:

utf8mb4_0900_ai_ci utf8mb4_unicode_ci utf8mb4_general_ci

當設置表的默認字符集為utf8mb4字符集但未明確指定排序規則時:

在MySQL 5.7版本中,默認排序規則為utf8mb4_general_ci。 在MySQL 8.0版本中,默認排序規則為utf8mb4_0900_ai_ci。

由于utf8mb4_0900_ai_ci排序規則時MySQL 8.0引入的排序規則,因此將MySQL 8.0版本的表導入到MySQL 5.7或MySQL 5.6版本時,會存在字符集無法識別的問題。

[Err] 1273 - Unknown collation: ’utf8mb4_0900_ai_ci’

參數控制

在MySQL 5.6版本中,參數collation_server用于設置服務器級別的默認排序規則。

如果服務啟動時未指定參數collation_database的值,則默認繼承參數collation_server的值。 如果創建數據庫時未指定排序規則,則默認使用參數collation_database的值。

參數character_set_database和collation_database在MySQL 5.7版本中被遺棄并將在后續版本中移除。MySQL新增參數default_collation_for_utf8mb4用于控制使用utf8mb4字符集時的默認排序規則,取值為utf8mb4_0900_ai_ci或utf8mb4_general_ci參數default_collation_for_utf8mb4在下列條件中生效:

使用SHOW COLLATION and SHOW CHARACTER SET 命令時。 在創建庫或修改庫指定utf8mb4但未指定編碼規則時。 在創建表或修改表指定utf8mb4但未指定編碼規則時。 在增加列或修改列指定utf8mb4但未指定編碼規則時。 其他使用utf8mb4但未指定編碼規則時。utf8mb4_unicode_ci和utf8mb4_general_ci對比

1、準確性

utf8mb4_unicode_ci排序規則基于標準unicode進行排序和比較,能處理特殊的字符,能在各種語音中精確排序。 utf8mb4_general_ci排序規則沒有基于標準unicode,無法處理部分特殊字符。

2、性能

utf8mb4_general_ci排序規則在排序性能上相對較好 utf8mb4_unicode_ci排序規則為處理特殊字符實現復雜的排序算法,性能略差 在大部分場景下,兩者沒有明顯的性能差異補:MySQL--utf8mb4與等值查詢測試

測試腳本

## 刪除測試表DROP TABLE IF EXISTS tb2001;DROP TABLE IF EXISTS tb2002;DROP TABLE IF EXISTS tb2003;## 創建測試表CREATE TABLE tb2001(id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(100) COLLATE utf8mb4_unicode_ci,c2 VARCHAR(100) COLLATE utf8mb4_bin)ENGINE=INNODB DEFAULT CHARSET=utf8mb4 ;CREATE TABLE tb2002(id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(100) COLLATE utf8mb4_general_ci,c2 VARCHAR(100) COLLATE utf8mb4_bin)ENGINE=INNODB DEFAULT CHARSET=utf8mb4;CREATE TABLE tb2003(id INT AUTO_INCREMENT PRIMARY KEY,c1 VARCHAR(100) COLLATE utf8mb4_0900_ai_ci,c2 VARCHAR(100) COLLATE utf8mb4_bin)ENGINE=INNODB DEFAULT CHARSET=utf8mb4;## 插入測試數據INSERT INTO tb2001(c1,c2)VALUES(0xF09F8D83,0xF09F8D83),(0xF09FA68A,0xF09FA68A),(0xF09F8CA0,0xF09F8CA0);INSERT INTO tb2002(c1,c2)VALUES(0xF09F8D83,0xF09F8D83),(0xF09FA68A,0xF09FA68A),(0xF09F8CA0,0xF09F8CA0);INSERT INTO tb2003(c1,c2)VALUES(0xF09F8D83,0xF09F8D83),(0xF09FA68A,0xF09FA68A),(0xF09F8CA0,0xF09F8CA0);## 等值查詢測試SELECT * FROM tb2001 WHERE c1=0xF09F8D83;SELECT * FROM tb2002 WHERE c1=0xF09F8D83;SELECT * FROM tb2003 WHERE c1=0xF09F8D83;SELECT * FROM tb2001 WHERE c2=0xF09F8D83;SELECT * FROM tb2002 WHERE c2=0xF09F8D83;SELECT * FROM tb2003 WHERE c2=0xF09F8D83;

測試結果

mysql> SELECT * FROM tb2001 WHERE c1=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 || 2 | 🦊 | 🦊 || 3 | 🌠 | 🌠 |+----+------+------+3 rows in set (0.00 sec)mysql> SELECT * FROM tb2002 WHERE c1=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 || 2 | 🦊 | 🦊 || 3 | 🌠 | 🌠 |+----+------+------+3 rows in set (0.01 sec)mysql> SELECT * FROM tb2003 WHERE c1=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 |+----+------+------+1 row in set (0.00 sec)mysql> mysql> SELECT * FROM tb2001 WHERE c2=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 |+----+------+------+1 row in set (0.00 sec)mysql> SELECT * FROM tb2002 WHERE c2=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 |+----+------+------+1 row in set (0.00 sec)mysql> SELECT * FROM tb2003 WHERE c2=0xF09F8D83;+----+------+------+| id | c1 | c2 |+----+------+------+| 1 | 🍃 | 🍃 |+----+------+------+1 row in set (0.00 sec)

測試總結

使用utf8mb4字符集能存儲特殊字符如表情符號。 utf8mb4_unicode_ci和utf8mb4_general_ci排序規則無法'正確匹配'特殊字符。 utf8mb4_0900_ai_ci排序規則能'正確匹配'特殊字符,但僅適用MySQL 8.0版本。 utf8mb4_bin排序規則基于二級制方式匹配特殊字符,能'正確匹配'特殊字符,適用于MySQL各個版本。

到此這篇關于MySQL中utf8mb4排序規則示例的文章就介紹到這了,更多相關MySQL utf8mb4排序內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 国产精品国产三级国产an | 欧美日韩在线观看一区二区 | 男人透女人超爽视频免费 | 岛国毛片在线观看 | 国产不卡在线视频 | 欧美特级另类xxx | 免费观看欧美一级牲片一 | 午夜免费69性视频爽爽爽 | a级毛片高清免费视频 | 欧美一级鲁丝片 | 奇米网狠狠干 | 国产菲菲视频在线观看 | 色碰碰| 免费国产成人高清视频网站 | 成年人在线观看视频免费 | 国产欧美一区二区三区在线 | 韩国美女爽快毛片免费 | 国内精品久久久久久野外 | 日韩亚洲欧美综合一区二区三区 | 日本草草视频在线观看 | 毛片在线免费观看网站 | 精品国产三级a∨在线观看 精品国产三级a在线观看 | 日本韩国一级毛片中文字幕 | 成人合成mv福利视频网站 | 高清在线亚洲精品国产二区 | 99久久精品国产片久人 | 日韩 欧美 中文 亚洲 高清 在线 | 美国一级免费毛片 | 欧美人与鲁交大毛片免费 | 国产欧美日韩中文久久 | 国产精品视频免费一区二区三区 | 国产a国产片 | 日本一级在线观看 | 国产精品成人影院 | 精品国产v无码大片在线观看 | 99视频在线免费观看 | 国产高清一国产免费软件 | 国产精品久久久精品视频 | 一级毛片欧美大片 | 欧美日韩一区二区在线观看 | 久久视频精品线视频在线网站 |