"utf8_unicode_ci"和"utf8_unicode_520_ci"之间的区别是什么?

jef*_*eff 19 mysql collation wampserver utf-8

我最近升级了WAMPServer,现在在phpMyAdmin中,我看到了两个排序规则utf8_unicode_ciutf8_unicode_520_ci.我在土耳其应用程序中使用"utf8_unicode_ci",但我想知道新的*_520排序规则有什么不同?

egg*_*yal 19

校对名称所述:

Unicode归类名称可以包括版本号,以指示归类所基于的Unicode归类算法(UCA)的版本.名称中没有版本号的基于UCA的排序规则使用版本-4.0.0 UCA权重键:http://www.unicode.org/Public/UCA/4.0.0/allkeys-4.0.0.txt.校对名称,例如utf8_unicode_520_ci基于UCA 5.2.0权重键:http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt.


Kam*_*ski 6

你可以在这里阅读 (感谢用户3399549链接)排序/比较波兰字母"Ł"(L与笔画)(小写:"ł"; html esc:łŁ)这里有问题Peter Gulutzan解释了搭配之间的差异:

我们对Ł有这些整理和规则:

utf8_polish_ci      ? greater than L and less than M
utf8_unicode_ci     ? greater than L and less than M
utf8_unicode_520_ci ? equal to L
utf8_general_ci     ? greater than Z
Run Code Online (Sandbox Code Playgroud)

在波兰语中,字母Ł在字母L之后和M之前.我们可以用以下方式写出来(澄清):

L < ? < M 

and 

L != ?  
Run Code Online (Sandbox Code Playgroud)

所以要避免这种问题(使用排序/ comapring)utf8_unicode_ci.

  • `utf8_unicode_520_ci`比`utf8_unicode_ci`更新,不是吗?为什么他们会变得更糟?作为波兰人,你会期望"Stanisław"出现在"Stanislaw"的搜索结果中吗?当我按Ctrl + F选择"L"时,Chrome会突出显示"Ł"和"L". (3认同)