MYSQL,忽略空格,标点符号,替换查询中的重音符号

发布于 2024-10-31 20:34:16 字数 317 浏览 1 评论 0原文

我需要一种方法来使用包含省份缩写、全名和地区的词典,而不必为安大略省的每个可能的拼写错误添加条目。 表格如下:

state       |name     | territory
===================================
AB           Alberta   West

数据如下:

"Ontario,"
"ON,"
"ON"
"On"
" Ontario"
"Ontario "
" Ontario "


Quebec
Québec
QU
QB
Quebec,

I need a way to use my dictionary with province abbreviations, full names and territories without having to add an entry for every possible misspelling of Ontario.
Table is as such:

state       |name     | territory
===================================
AB           Alberta   West

Data is as such:

"Ontario,"
"ON,"
"ON"
"On"
" Ontario"
"Ontario "
" Ontario "


Quebec
Québec
QU
QB
Quebec,

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

折戟 2024-11-07 20:34:16

不是您眼前问题的真正答案,但这就是标准化的目的。为省份制作另一个表格,然后将其链接到原始表格,而不是允许自由格式的文本。

或者,向输入添加触发器以强制收集的数据保持一定的一致性。 (至少修剪空格,使其全部向上,也许检查有效条目..等)

not a real answer for you immediate problem, but this is what normalization is for. make another table for provinces, and then link that to the original table instead of allowing freeform text.

alterantely, add a trigger tot he input to enforce some consistency to the data collected. (at least trim the spaces, make it all UPPER, maybe check for valid entries.. etc.)

蓝颜夕 2024-11-07 20:34:16

只是一个想法,知道它不能用于您的所有数据库。
无论如何:使用
怎么样?
SELECT * FROM 表,其中名称类似于“%ontario%”

Just an idea, knowing it can't be used for all your db.
Anyway: what about using
SELECT * FROM table WHERE name LIKE '%ontario%'?

欲拥i 2024-11-07 20:34:16

对于OP来说有点晚了,但对于其他尝试进行松散匹配搜索的人来说,请查看 STRCMP() 和 SOUNDEX() ,详细信息如下:

http://www.madirish.net/node/85

A bit late for the OP, but for others trying to do loose match searches, check out STRCMP() and SOUNDEX() as detailed here:

http://www.madirish.net/node/85

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文