Tôi đang tìm cách truy vấn cơ sở dữ liệu tên rượu, trong đó có nhiều dấu (nhưng không theo cách thống nhất, và vì vậy các loại rượu tương tự có thể được nhập có hoặc không có dấu)Truy vấn MySQL REGEXP - tìm kiếm theo cách không nhạy cảm
các truy vấn cơ bản như sau:
SELECT * FROM `table` WHERE `wine_name` REGEXP '[[:<:]]Faugères[[:>:]]'
mà sẽ trả lại các mục với 'Faugères' trong tiêu đề, nhưng không phải là 'Faugeres'
SELECT * FROM `table` WHERE `wine_name` REGEXP '[[:<:]]Faugeres[[:>:]]'
làm điều ngược lại.
Tôi đã nghĩ cái gì đó như:
SELECT *
FROM `table`
WHERE `wine_name` REGEXP '[[:<:]]Faug[eèêéë]r[eèêéë]s[[:>:]]'
thể làm như lừa, nhưng điều này chỉ trả về những kết quả mà không có điểm nhấn.
Trường được đối chiếu dưới dạng utf8_unicode_ci, từ trường tôi đọc là như thế nào.
Bất kỳ đề xuất nào ?!
Tôi cũng gặp vấn đề tương tự. Xem chủ đề của tôi tại đây: http://stackoverflow.com/questions/33722136/how-to-search-string-using-entity-framework-with-contains-and-with-accent-insen/34047990#34047990 – Dan