【发布时间】:2014-10-29 23:01:31
【问题描述】:
我正在尝试编写一个 mysql 查询,该查询将匹配表中的名称,并且数据库中的名称可以包含点或不包含点。因此,例如,我希望我的查询字符串“fast”匹配所有这些:“fast”、“f.ast”、“f.a.s.t”等
我无法预测这些点会在哪里,所以使用 LIKE 似乎不合适
SELECT * FROM teams WHERE (name LIKE "%fast%" OR `name` LIKE "%f.ast%")
我想如果我可以让正则表达式工作,那么我不需要使用 LIKE
SELECT * FROM teams WHERE name REGEXP '.*'
我对 sql 不太擅长,对正则表达式更不擅长。我尝试了一些正则表达式,但还没有弄清楚。有人可以帮帮我吗?
【问题讨论】:
-
您不需要正则表达式 - 只需
REPLACE