Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql подреждане по колона с уникод символи

За да сортирате с помощта на уникод кодова точка, вероятно трябва да използвате utf8_bin съпоставяне.

Точно, _bin суфикс указва за сортиране по двоичното представяне на всеки знак .

За отмяна съпоставянето по подразбиране, докато поръчвате, ще използвате ПОРЪЧАЙ ОТ ... СЪБОРЯВАНЕ :

За да перифразираме документацията:

SELECT k
FROM t1
ORDER BY k COLLATE utf8_bin;

Ако вашата текстова колона не използвайте utf8 кодиране, ще трябва да КОНВЕРТИРАНЕ то:

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

Моля, обърнете внимание, че използвах utf8 като пример тук, тъй като това е най-често срещаното Unicode кодиране. Но вашият MySQL сървър вероятно поддържа друго Unicode кодиране, като ucs2 („UTF-16“).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на 'LIKE' с резултат от SQL подзаявка

  2. Твърде много автоматични увеличения с АКТУАЛИЗИРАНЕ НА ДУПЛИКАТ КЛЮЧ

  3. MySQL FIND_IN_SET() не работи според очакванията

  4. Най-добрият начин да проверите за съществуващ потребител в базата данни на mySQL?

  5. Пренасочване на скитни портове за Mysql