Unicode Character Sets For Japanese, the  utf8mb4  character set includes  utf8mb4_ja_0900_as_cs  and utf8mb4_ja_0900_as_cs_ks  collations. Both collations are accent-sensitive and case-sensitive. utf8mb4_ja_0900_as_cs_ks  is also kana-sensitive and distinguishes Katakana characters from Hiragana characters, whereas  utf8mb4_ja_0900_as_cs  treats Katakana and Hiragana characters as equal for sorting. Applications that require a Japanese collation but not kana sensitivity may use utf8mb4_ja_0900_as_cs  for better sort performance.  utf8mb4_ja_0900_as_cs  uses three weight levels for sorting;  utf8mb4_ja_0900_as_cs_ks  uses four. For Classical Latin collations that are accent-insensitive,  I  and  J  compare as equal, and  U  and  V  compare as equal.  I  and  J , and  U  and  V  compare as equal on the base letter level. In other words,  J  is regarded as an accented  I , and  U  is regarded as an accented  V . Spanish collations are available for modern and traditional Spanish. For both,  æ  (n-tilde) is a separate letter between  n  and  o . In addition, for traditional Spanish,  ch  is a separate letter between  c  and  d , and  ll  is a separate letter between  l  and  m . Traditional Spanish collations may also be used for Asturian and Galician. Swedish collations include Swedish rules. For example, in Swedish, the following relationship holds, which is not something expected by a German or French speaker: Ü = Y < Ö For any Unicode character set, operations performed using the  xxx _general_ci  collation are faster than those for the  xxx _unicode_ci  collation. For example, comparisons for the  utf8_general_ci collation are faster, but slightly less correct, than comparisons for  utf8_unicode_ci . The reason is that  utf8_unicode_ci  supports mappings such as expansions; that is, when one character compares as equal to combinations of other characters. For example,  ß  is equal to  ss  in German and some other languages.  utf8_unicode_ci  also supports contractions and ignorable characters.  utf8_general_ci is a legacy collation that does not support expansions, contractions, or ignorable characters. It can make only one-to-one comparisons between characters. _general_ci Versus _unicode_ci Collations To further illustrate, the following equalities hold in both  utf8_general_ci  and  utf8_unicode_ci  (for the effect of this in comparisons or searches, see Section 10.8.6, “Examples of the Effect of Collation” ): ˜ = A Ö = O Ü = U A difference between the collations is that this is true for  utf8_general_ci : ß = s Whereas this is true for  utf8_unicode_ci , which supports the German DIN-1 ordering (also known as dictionary order): ß = ss MySQL implements  utf8  language-specific collations if the ordering with  utf8_unicode_ci  does not work well for a language. For example,  utf8_unicode_ci  works fine for German dictionary order and French, so there is no need to create special  utf8  collations. utf8_general_ci  also is satisfactory for both German and French, except that  ß  is equal to  s , and not to ss . If this is acceptable for your application, you should use  utf8_general_ci  because it is faster. If this is not acceptable (for example, if you require German dictionary order), use  utf8_unicode_ci  because it is more accurate. 1974