sql >> Databasteknik >  >> RDS >> Mysql

välja tabellsortering för universella tecken

  • ...general_ci det är enkelt. Det likställer inte kombinationer av två tecken (som med ett tecken utan mellanrum) med motsvarigheten med enstaka tecken.

  • ...unicode_520_ci kommer från Unicode version 5.20, den senaste versionen tillgänglig när MySQL hämtade den. Den hanterar saker som att ha en beställning för Emoji, som tidigare versioner inte hade.

  • Med MySQL 8.0 är den föredragna sorteringen utf8mb4_0900_ai_ci , baserat på Unicode 9.0.

  • ...<language>_ci hanterar variationer som finns på det givna språket. Till exempel bör ch och ll på spanska behandlas som "bokstäver" och sortera mellan cz och d och lz och m .

  • För allmänt bruk, använd inte ...general_ci , använd den senaste versionen från Unicode. För språkspecifika situationer, välj en av de andra sorteringarna.

  • Jag vet hur (eller till och med om) kinesiska och arabiska sorteras olika i de olika sammanställningarna. Men jag ser ...persion_ci , så jag misstänker att det finns ett problem.

  • Använd utf8mb4 , inte utf8 , särskilt eftersom du behöver kinesiska.




  1. Vilken MySQL-datatyp ska jag använda för en IP-adress?

  2. Hur håller du ordningen med SELECT WHERE IN()?

  3. Enkelt exempel på många-till-många-relation med Sequelize

  4. WIDTH_BUCKET() Funktion i Oracle