sql >> Database teknologi >  >> RDS >> Mysql

Findes der en utf8_unicode_cs-sortering?

Jeg stødte på det samme problem, og efter lidt google lader det til, at MySQL ikke inkluderer det. For at "simulere det", som du udtrykker det,

1) For at sikre følsomhed mellem store og små bogstaver i DB:Indstil tabelkolonnen til utf8_bin sortering
Dette tillader:

  • strenge SELECT:SELECT "Joe" returnerer IKKE rækker med "joe" / "joE" / "jOe" / osv.
  • strengt UNIKT indeks:en kolonne med et UNIKT indeks vil behandle forskelle mellem store og små bogstaver som forskellige værdier. Hvis der f.eks. bruges en utf8_unicode_ci-kollation, vil indsættelse af "Joe" på en tabel, der allerede har "joe", udløse en "Duplicate key"-fejl. Hvis ut8_bin bruges, vil det fungere fint at indsætte "Joe".

2) For at få den korrekte rækkefølge i resultater:tilføj sorteringen til SQL-forespørgslen:

SELECT ... ORDER BY column COLLATE utf8_unicode_ci


  1. Fejl ved installation af Apache med xampp

  2. Hvordan får man summen af ​​tid fra databasen i PHP?

  3. Brug af Solr søgeindeks som database - er det forkert?

  4. Få eksekveringstid for PostgreSQL-forespørgsel