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

MySQL chọn chuỗi UTF-8 với '=' nhưng không có 'LIKE'

Sau khi xem câu trả lời của Marcus Adams, tôi nhận ra rằng hàm REPLACE có thể là giải pháp cho vấn đề này, mặc dù anh ấy không đề cập đến hàm này.

Vì tôi chỉ có hai ký tự kết hợp khác nhau (dấu sắc và dấu ngã), kết hợp với các ký tự ASCII khác, ví dụ:j với dấu ngã, j với dấu sắc, m với dấu ngã, s với dấu ngã, v.v. Tôi chỉ phải thay thế hai ký tự này khi sử dụng LIKE.

Sau khi tìm kiếm sách hướng dẫn, tôi đã biết về hàm UNHEX đã giúp tôi biểu diễn chính xác các ký tự kết hợp riêng trong truy vấn để loại bỏ chúng.

Dấu ngã kết hợp được đại diện bởi CC83 trong mã HEX và dấu sắc được biểu thị bằng CC81 trong HEX.

Vì vậy, truy vấn giải quyết vấn đề của tôi là truy vấn này.

SELECT word, REPLACE(REPLACE(word, UNHEX("CC83"), ""), UNHEX("CC81"), "")
FROM oldword WHERE REPLACE(REPLACE(word, UNHEX("CC83"), ""), UNHEX("CC81"), "") 
LIKE 'hua%';`


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi có thể di chuyển mảng từ php sang javascript để lấy lại từ cơ sở dữ liệu mysql không

  2. jQuery Xác thực cách sử dụng phương pháp từ xa để kiểm tra xem tên người dùng đã tồn tại chưa

  3. trợ giúp với truy vấn qua bảng quan hệ

  4. iPhone:Kết nối với cơ sở dữ liệu qua Internet?

  5. Lỗi khi cài đặt mysqlclient cho python trên Ubuntu 18.04