MySQL collation names follow these conventions:
A collation name starts with the name of the character set with which it is associated, generally followed by one or more suffixes indicating other collation characteristics. For example,
utf8_general_ciandlatin1_swedish_ciare collations for theutf8andlatin1character sets, respectively. Thebinarycharacter set has a single collation, also namedbinary, with no suffixes.A language-specific collation includes a language name. For example,
utf8_turkish_ciandutf8_hungarian_cisort characters for theutf8character set using the rules of Turkish and Hungarian, respectively.Collation suffixes indicate whether a collation is case-sensitive, accent-sensitive, or kana-sensitive (or some combination thereof), or binary. The following table shows the suffixes used to indicate these characteristics.
Table 1.1 Collation Suffix Meanings
Suffix Meaning _aiAccent-insensitive _asAccent-sensitive _ciCase-insensitive _csCase-sensitive _binBinary For nonbinary collation names that do not specify accent sensitivity, it is determined by case sensitivity. If a collation name does not contain
_aior_as,_ciin the name implies_aiand_csin the name implies_as. For example,latin1_general_ciis explicitly case-insensitive and implicitly accent-insensitive, andlatin1_general_csis explicitly case-sensitive and implicitly accent-sensitive.For the
binarycollation of thebinarycharacter set, comparisons are based on numeric byte values. For the_bincollation of a nonbinary character set, comparisons are based on numeric character code values, which differ from byte values for multibyte characters. For information about the differences between thebinarycollation of thebinarycharacter set and the_bincollations of nonbinary character sets, see Section 1.8.5, “The binary Collation Compared to _bin Collations”.Collation names for Unicode character sets may include a version number to indicate the version of the Unicode Collation Algorithm (UCA) on which the collation is based. UCA-based collations without a version number in the name use the version-4.0.0 UCA weight keys. For example:
utf8_unicode_520_ciis based on UCA 5.2.0 weight keys (http://www.unicode.org/Public/UCA/5.2.0/allkeys.txt).utf8_unicode_ci(with no version named) is based on UCA 4.0.0 weight keys (http://www.unicode.org/Public/UCA/4.0.0/allkeys-4.0.0.txt).
For Unicode character sets, the
collations preserve the pre-5.1.24 ordering of the originalxxx_general_mysql500_cicollations and permit upgrades for tables created before MySQL 5.1.24 (Bug #27877).xxx_general_ci