sql >> Databasteknik >  >> RDS >> Mysql

Mysql ordna efter kolumn med Unicode-tecken

För att sortera med unicode-kodpunkt behöver du förmodligen använda utf8_bin sammanställning.

Precis, _bin suffix indikerar att sortera efter den binära representationen av varje tecken .

Att åsidosätta standardsorteringen när du beställer kommer du att använda ORDER GENOM ... SORTERA :

För att parafrasera dokumentationen:

SELECT k
FROM t1
ORDER BY k COLLATE utf8_bin;

Om din textkolumn inte använd utf8-kodning, du måste KONVERTERA det:

SELECT k
FROM t1
ORDER BY CONVERT(k USING utf8) COLLATE utf8_bin;

Observera att jag använde utf8 som ett exempel här eftersom detta är den vanligaste Unicode-kodningen. Men din MySQL-server stöder förmodligen annan Unicode-kodning, som ucs2 ("UTF-16").




  1. Visa receptnamnet om alla dess ingredienser redan är angivna

  2. MySQL Hur infogar man i en tabell med en SELECT-underfråga som returnerar flera rader?

  3. 5 problemfria tips för att använda SQL UPDATE Statement med JOIN

  4. Autoload resultat som hämtar samma resultat om och om igen