- Първи избор (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 (включително Cherokee, Klingon, Cuneiform, Byzantine и др.)
Ако португалският е в центъра на вниманието:
Вижте https://pt.stackoverflow.com/ и MySQL съпоставяне за португалски .
Проучете това за 8.0
или това за пред 8.0
за да видите кое съпоставяне utf8/utf8mb4 е най-близо до сортирането на португалския „правилно“. Може би utf8mb4_danish_ci
или utf8mb4_de_pb_0900_ai_ci
би било най-добре.
(Иначе използвайте изброените по-горе „избори“.)