English 中文(简体)
utf8_unicode_ci和utf8mb4_0900_ai_ci
原标题:What s the difference between utf8_unicode_ci and utf8mb4_0900_ai_ci

What is the difference between utf8mb4_0900_ai_ci and utf8_unicode_ci database text coding in mysql (especially in terms of performance) ?

最新情况:

There are similar differences between utf8mb4_unicode_ci and utf8mb4_0900_ai_ci?

最佳回答
  • The encoding is the same. That is, the bytes look the same.
  • The character set is different. utf8mb4 has more characters.
  • The collation (how comparisions are done) is different.
  • The perfomance is different, but it rarely matters.

utf8_unicode_ci 意思是,其中仅包括1-、2-和3-byte UTF-8特性。 因此,它排除了大部分Emoji和一些中国特征。

<代码>utf8mb4_unicode_ci系指CHARTER SET utf8mb4为4-byte CHARACTER SET utf8mb4相应

多年来,统法协会组织一直在发展规格。 这里的地图来自其“转用”至MySQL Collations:

4.0   _unicode_
5.2.0 _unicode_520_ (Unicode 2009; MySQL GA 5.6 2013)
9.0   _0900_
14.0  _uca1400_ai_ci etc.  as/ai and cs/ci (MariaDB-10.10, not MySQL)

大部分差异将发生在大多数人从未遇到过的领域。 例如: 在某些时候,一项改变使Emoji得以区别,并以某种方式下达命令。

The suffix (MySQL doc):

_bin      -- just compare the bits; don t consider case folding, accents, etc
_ci       -- explicitly case insensitive (A=a) and implicitly accent insensitive (a=á)
_ai_ci    -- explicitly case insensitive and accent insensitive
_as (etc) -- accent-sensitive (etc)

业绩:

_bin         -- simple, fast
_general_ci  -- fails to compare multiple letters; eg ss=ß, so somewhat fast
...          -- slower
_900_        -- (8.0) much faster because of a rewrite

然而: 核对速度通常是询问中业绩问题最少。 <代码>INDEXes,JOINs, subqueries, table scans, 等对于业绩来说更为关键。

问题回答

暂无回答




相关问题
SQL SubQuery getting particular column

I noticed that there were some threads with similar questions, and I did look through them but did not really get a convincing answer. Here s my question: The subquery below returns a Table with 3 ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

php return a specific row from query

Is it possible in php to return a specific row of data from a mysql query? None of the fetch statements that I ve found return a 2 dimensional array to access specific rows. I want to be able to ...

Character Encodings in PHP and MySQL

Our website was developed with a meta tag set to... <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> This works fine for M-dashes and special quotes, etc. However, I ...

Pagination Strategies for Complex (slow) Datasets

What are some of the strategies being used for pagination of data sets that involve complex queries? count(*) takes ~1.5 sec so we don t want to hit the DB for every page view. Currently there are ~...

Averaging a total in mySQL

My table looks like person_id | car_id | miles ------------------------------ 1 | 1 | 100 1 | 2 | 200 2 | 3 | 1000 2 | 4 | 500 I need to ...