Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL nie traktuje ı jako i?

Odnosząc się do http://mysql.rjweb.org/utf8_collations.html , widzę, że ı=i w 3 zestawieniach:utf8_general_ci, utf8_general_mysql500_ci, utf8_turkish_ci. Jednak dla tureckiego zestawienia I=ı sortuje przed innymi akcentowanymi ja. We wszystkich innych zestawieniach ı sortuje mimo wszystko ja, jakby była traktowana jako osobna litera.

Tymczasem İ=I we wszystkich zestawieniach z wyjątkiem utf8_turkish_ci.

Fabuła zagęszcza się dzięki MySQL 8.0. utf8mb4_tr_0900_ai_ci (tylko) ma następującą kolejność:

I=Ì=Í=Î=Ï=Ĩ=Ī=Ĭ=Į=ı sort before  i=ì=í=î=ï=ĩ=ī=ĭ=į=İ

Tymczasem ä=Ä i pasują do większości innych akcentowanych A dla większości zestawień (w tym tureckich).

Konkluzja:Wygląda na to, że utf8[mb4]_general_ci to jedyne zestawienie w wersji 5.7 lub 8.0, które zawsze traktuje kropkowane-i (lub kropkowane-I) jako 'regularne i/I i jednocześnie ignoruj ​​umlauty.

Zastrzeżenie:„Ogólne” zestawienia nie testują więcej niż jednego znaku na raz. Oznacza to, że „bez odstępów umlaut” plus samogłoska nie będą traktowane jako równe kombinacji.

W tym łączu... Jeden znak æ jest posortowany tak samo jak dwie litery ae dla niektórych zestawień. Wskazuje na to:Aa ae=æ az . W około połowie pozostałych zestawień znak æ jest traktowany jako osobny list; jest to oznaczone jako po az i przed b . Lub nawet po zz dla zestawień skandynawskich. Ta koncepcja oddzielnych liter czasami odnosi się do par liter, na przykład cs (węgierski) i ch (tradycyjny hiszpański).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. utworzyłem tablice w PHP 5.6 z [] w PHP 7.1 dają błąd krytyczny

  2. Łatwa konfiguracja serwera internetowego za pomocą XAMPP

  3. Jak wyeksportować i zaimportować bazę danych mysql z jej danymi za pomocą skryptu php?

  4. Czy mogę przywrócić pojedynczą tabelę z pełnego pliku mysql mysqldump?

  5. Przetwarzanie dużych ilości danych w PHP bez limitu czasu przeglądarki