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

Wyszukiwanie z uwzględnieniem wielkości liter w MYSQL dla pola utf8_bin

Ciąg znaków w MySQL ma zestaw znaków i sortowanie . Utf8 to zestaw znaków, a utf8_bin jest jednym z jego zestawień. Aby porównać literał ciągu z kolumną utf8, przekonwertuj go na utf8, poprzedzając go notacją _charset:

_utf8 'Something'

Teraz sortowanie jest ważne tylko dla niektórych zestawów znaków. Wielkość liter wrażliwa porównywanie dla utf8 wygląda na utf8_bin, które można określić w następujący sposób:

_utf8 'Something' collate utf8_bin

W przypadku tych konwersji zapytanie powinno działać:

select * from page where pageTitle = _utf8 'Something' collate utf8_bin

Prefiks _charset działa z literałami łańcuchowymi. Aby zmienić zestaw znaków pola, jest CONVERT ... USING. Jest to przydatne, gdy chcesz przekonwertować pole pageTitle na inny zestaw znaków, na przykład:

select * from page 
where convert(pageTitle using latin1) collate latin1_general_cs = 'Something'

Aby zobaczyć znak i sortowanie kolumny o nazwie „col” w tabeli o nazwie „TAB”, spróbuj:

select distinct collation(col), charset(col) from TAB

Listę wszystkich zestawów znaków i zestawień można znaleźć w:

show character set
show collation

Wszystkie poprawne sortowania dla utf8 można znaleźć za pomocą:

show collation where charset = 'utf8'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie MySQL do wybrania danych z zeszłego tygodnia?

  2. Serwer nie odpowiada (lub gniazdo lokalnego serwera MySQL nie jest poprawnie skonfigurowane) na serwerze wamp

  3. Jak ustawić ustawienia regionalne dla bieżącego połączenia w MySQL?

  4. Ściągawka z poleceniami SQL – jak nauczyć się SQL w 10 minut

  5. Połącz się z MySql db przez SSH w Netbeans