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

Съществува ли сортиране utf8_unicode_cs?

Попаднах на същия проблем и след известно търсене в Google изглежда, че MySQL не го включва. За да го „симулирам“, както се изразихте,

1) За да осигурите чувствителност към главни и малки букви в DB:задайте колоната на таблицата на utf8_bin съпоставяне
Това позволява:

  • строги SELECTs:SELECT "Joe" НЯМА да върне редове с "joe" / "joE" / "jOe" / и т.н.
  • строг УНИКАЛЕН индекс:колона с УНИКАЛЕН индекс ще третира разликите между главни и малки букви като различни стойности. Например, ако се използва колация utf8_unicode_ci, вмъкването на „Joe“ в таблица, която вече има „joe“, ще задейства грешка „Дублиращ ключ“. Ако се използва ut8_bin, вмъкването на "Joe" ще работи добре.

2) За да получите правилното подреждане в резултатите:добавете сортирането към SQL заявката:

SELECT ... ORDER BY column COLLATE utf8_unicode_ci


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL заявка за групиране по месец, част от клеймото за време

  2. Предоставяне на изчакване на скрипт, преминало при импортиране на база данни

  3. Лошо ръкостискане или ECONNRESET Azure Mysql Nodejs

  4. mysql репликация - подчинен сървър на една база данни

  5. Подредената входна стойност вмъква празен запис в mysql