Tôi đang chạy các câu SELECT sau trên MySQL 5.0.88 với charset utf8 và collation utf8_unicode_ci:MySQL - Tại sao các quy tắc COLLATION bỏ qua bởi nhà điều hành NHƯ cho nhân vật ß Đức
SELECT * FROM table WHERE surname = 'abcß';
+----+-------------------+------+
| id | forename | surname |
+----+-------------------+------+
| 1 | a | abcß |
| 2 | b | abcss |
+----+-------------+------------+
SELECT * FROM table WHERE surname LIKE 'abcß';
+----+-------------------+------+
| id | forename | surname |
+----+-------------------+------+
| 1 | a | abcß |
+----+-------------+------------+
Theo http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html đặc biệt của Đức char ß = ss cho utf8_unicode_ci, nhưng tại sao nó chỉ hoạt động với toán tử "=" chứ không phải với LIKE? Tôi có một ứng dụng danh bạ điện thoại và tôi rất cần cả hai thứ làm việc cùng nhau.
gì không hiển thị các biến như '% collation%' 'và' hiển thị các trường đầy đủ từ chương trình 'có thể hiển thị của bạn? Sự đối chiếu phải giống hệt nhau trong suốt. –
collation cho tất cả các lĩnh vực varchar của bảng được thiết lập để "utf8_unicode_ci" + một số lĩnh vực int không có collation ở tất cả. – sub
+1 câu hỏi rất thú vị, thích nghe câu trả lời. – Johan