- Первый выбор (MySQL 8.0):
utf8mb4_0900_ai_ci
- Второй выбор (по состоянию на 5.6):
utf8mb4_unicode_520_ci
- Третий выбор (5,5+):
utf8mb4_unicode_ci
- До версии 5.5 вы не можете справиться со всеми китайцами и эмодзи:
utf8_unicode_ci
Цифры относятся к стандартам Unicode 9.0, 5.20 и (без номера) 4.0.
Нет сортировки, которая подходит для сортировки всех языков одновременно. Испанский, немецкий, турецкий и т. Д. Имеют причуды, которые несовместимы. Приведенные выше сопоставления являются «лучшими» из доступных для общего применения.
utf8mb4 обрабатывает все символы, указанные в Unicode (включая чероки, клингоны, клинопись, византийцы и т. Д.)
Если в фокусе португальский:
См. https://pt.stackoverflow.com/ и сопоставление MySQL для португальского .
Изучите это для 8.0 или это для pre 8.0 , чтобы увидеть, какая сортировка utf8 / utf8mb4 наиболее близка к правильной сортировке португальского ' ». Возможно, utf8mb4_danish_ci
или utf8mb4_de_pb_0900_ai_ci
будет лучше.
(В противном случае используйте «варианты», перечисленные выше.)