gpt4 book ai didi

mysql - 如何让 MySQL 匹配 `%D%` => `Đ`

转载 作者:行者123 更新时间:2023-11-29 02:05:46 26 4
gpt4 key购买 nike

我遇到了一个非常令人沮丧的功能,出于某种原因,涉及选择 LIKE %D% 的查询将不匹配 Đ

但是,与此类似的所有其他字符都匹配。 %n% 匹配 ñ%o% 匹配 ,但是如果我正在搜索 %同奈% 我不会得到同奈

尽管 %Thua Thien-Hue% 将匹配 Thừa Thiên-Huế

这是 MySQL 的特性还是硬编码到 Unicode 中的东西,或者有解决办法吗?它使使用我的网站的人无法找到有关某些越南省份的事件,除非他们可以访问 Đ 键,而在美国几乎没有人这样做。

编辑:

事实上,a、e、i、o 或 u 匹配所有越南语元音,这对于越南语使用者来说是非常意外的行为。

供引用;这是越南语中的所有元音。

à, á, ã̉, ạ, a, ằ, ắ, ẵ, ẳ, ặ, ă, ầ, ấ, ẫ, ẩ, ậ, â, è, é, ẽ, ẻ, ẹ, e, ề , ế, ễ, ể, ệ, ê, ì, í, ĩ, ỉ, ị, i, ò, ó, õ, ỏ ,ọ, o, ồ, ố ,ỗ, ổ, ộ ,ô, ờ, ớ ,ỡ, ở, ợ, ơ, ù, ú, ũ, ủ, ụ, u, ừ, ứ, ữ, ử, ự, ư


那么我的问题是,“什么构成足够不同的字母?”。


似乎其他讲越南语的人已将此报告为 MySQL 的错误:

此行为在 5.6+ 中似乎不存在。如果更新 MySQL 有帮助,我会通知您。

http://bugs.mysql.com/bug.php?id=61258

最佳答案

这是与排序规则有关的。查看http://www.collation-charts.org/mysql60/比较时你会发现 D 和字符 Đ 是不一样的。正如 nico 在评论中所建议的那样,最简单(虽然不是最快)的方法是在进行比较时用 D 替换 Đ 。但是,根据您的性能标准,这可能不切实际,在这种情况下,您可能希望保留一个单独的列或内容表,在将数据插入数据库时​​,这些列或内容表经过调整以替换某些字符。

关于mysql - 如何让 MySQL 匹配 `%D%` => `Đ`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6349011/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com