我希望能够搜索“ae”并同时得到“ae”和“Æ”结果。我只是不知道该怎么做。
我尝试将其整理为 utf8_german2_ci 和 utf8_general_ci。两者都应该能够根据我所读到的内容做我想做的事情。但它就是行不通。
提前致谢。
最佳答案
根据您的评论(“刚刚尝试过。两者都是。”),我认为您的数据库或连接没有任何问题。你唯一的问题是喜欢。 LIKE 进行“每个字符”比较,MySQL 手册 http://dev.mysql.com/doc/refman/5.7/en/string-comparison-functions.html有一个与您的情况非常相似的插图(使用“SELECT 'ä' LIKE 'ae' COLLATE latin1_german2_ci;”)。因此,您正在查看预期的行为,但可以说“从 tj 选择 s1, hex(s1),其中 s1 like '%ae%' 或 s1 like '%æ%';”。
关于php - MYSQL,在搜索时让 AE 等于 Æ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38209553/