MYSQL - 如何使用逗号匹配字段中的逗号?

时间:2012-01-15 17:00:46

标签: php mysql

我正试图从我的新闻Feed中获取一条记录。我通过它年,月和新闻文章标题。我根据年份=年份和月份=月份进行匹配,然后我使用标题:

LIKE '%title%'

这适用于所有情况,除非标题包含逗号。为什么不这样:

LIKE '%thank you donors volunteers and guests%'

匹配字段中的内容:Thank You Donors, Volunteers and Guests

但如果我加入逗号:

LIKE '%thank you donors, volunteers and guests%'

它匹配它。如果我不知道它们的位置,我怎么能告诉它与逗号匹配?

3 个答案:

答案 0 :(得分:3)

我认为您最好使用布尔全文搜索服务,您可以根据参数自定义查询,我不会为您编写查询,但您可以在这里找出如何:http://dev.mysql.com/doc/refman/5.1/en/fulltext-boolean.html

答案 1 :(得分:2)

它不匹配,因为它不是相同的字符串。 %是任何字符串的占位符,但其余内容必须完全匹配。

答案 2 :(得分:-1)

使用INSTR(),例如

SELECT field FROM table WHERE INSTR(field, "SEARCH STRING") > 0

INSTR()返回从字符索引1开始匹配的字符串的第一个实例的起始索引,因此您可以以类似于LIKE的方式使用它,而不需要特定于函数的特殊字符。