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

Khắc phục sự cố Lỗi kết hợp bất hợp pháp các đối chiếu trong mysql

Điều này thường xảy ra do so sánh hai chuỗi đối chiếu không tương thích hoặc do cố gắng chọn dữ liệu đối chiếu khác nhau thành một cột kết hợp.

Mệnh đề COLLATE cho phép bạn chỉ định đối chiếu được sử dụng trong truy vấn.

Ví dụ:WHERE sau mệnh đề sẽ luôn đưa ra lỗi bạn đã đăng:

WHERE 'A' COLLATE latin1_general_ci = 'A' COLLATE latin1_general_cs

Giải pháp của bạn là chỉ định một đối chiếu được chia sẻ cho hai cột trong truy vấn. Đây là một ví dụ sử dụng COLLATE mệnh đề:

SELECT * FROM table ORDER BY key COLLATE latin1_general_ci;

Một tùy chọn khác là sử dụng BINARY nhà điều hành:

BINARY str là cách viết tắt của CAST (str AS BINARY).

Giải pháp của bạn có thể trông giống như sau:

SELECT * FROM table WHERE BINARY a = BINARY b;

hoặc,

SELECT * FROM table ORDER BY BINARY a;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để Kiểm tra xem Nút Radio được Kiểm tra hoặc Chọn trong jQuery?

  2. Giám sát cơ sở dữ liệu - Khắc phục sự cố Prometheus với SCUMM Dashboards

  3. Làm cách nào để đặt ORDER BY params sử dụng câu lệnh PDO đã chuẩn bị sẵn?

  4. Chuyển đổi ngày giờ JS thành ngày giờ MySQL

  5. Có cách nào để truy xuất ID tự động tăng thêm từ một báo cáo đã chuẩn bị không