Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tìm kiếm phân biệt chữ hoa chữ thường MYSQL cho trường utf8_bin

Một chuỗi trong MySQL có bộ ký tự và đối chiếu . Utf8 là bộ ký tự và utf8_bin là một trong những đối chiếu của nó. Để so sánh chuỗi ký tự của bạn với một cột utf8, hãy chuyển đổi nó thành utf8 bằng cách thêm tiền tố vào ký hiệu _charset:

_utf8 'Something'

Bây giờ một đối chiếu chỉ hợp lệ cho một số bộ ký tự. Trường hợp- nhạy cảm đối chiếu cho utf8 dường như là utf8_bin, mà bạn có thể chỉ định như:

_utf8 'Something' collate utf8_bin

Với những chuyển đổi này, truy vấn sẽ hoạt động:

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

Tiền tố _charset hoạt động với các ký tự chuỗi. Để thay đổi bộ ký tự của một trường, có CHUYỂN ĐỔI ... SỬ DỤNG. Điều này hữu ích khi bạn muốn chuyển đổi trường pageTitle thành một bộ ký tự khác, như trong:

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

Để xem ký tự và đối chiếu cho cột có tên 'col' trong bảng có tên 'TAB', hãy thử:

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

Bạn có thể tìm thấy danh sách tất cả các bộ ký tự và ảnh ghép với:

show character set
show collation

Và tất cả các đối chiếu hợp lệ cho utf8 có thể được tìm thấy với:

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. `Mysqlcheck` có thể giúp tôi giải quyết các sự cố cơ sở dữ liệu mà không làm hỏng cơ sở dữ liệu của tôi không?

  2. Truy xuất các hàng được nhóm theo giờ với MySQL

  3. Xác thực trong giao thức mysql an toàn như thế nào?

  4. Cách hiển thị các quy trình MySQL

  5. Chuyển một số thành một từ trong Mysql