首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在mysql MATCH()AGAINST()中转义特殊字符的正确方法?

在mysql MATCH()AGAINST()中转义特殊字符的正确方法?
EN

Stack Overflow用户
提问于 2018-08-30 01:08:12
回答 1查看 0关注 0票数 0

无法找到任何令人满意的信息,可以在匹配(...)中使用完全特殊的字符(...)。例如,我在表格列中有两行字符串,我想匹配:

  1. “%add %% receipt%= french spaghetti”
  2. “%add %% ingredient%=主收据”

当我做

代码语言:javascript
复制
SELECT * FROM log WHERE MATCH(text) AGAINST('+%receipt%' IN BOOLEAN MODE);

结果我得到了两行。我完全需要第一个(只有收据)。

我也试过AGAINST('+"%receipt%"' IN BOOLEAN MODE)但没有成功。

有什么办法可以解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2018-08-30 10:18:38

如果查询正常,您只需要第一行。最简单的解决方案是使用LIMIT

代码语言:javascript
复制
SELECT * FROM log WHERE MATCH(text) AGAINST('+%receipt%' IN BOOLEAN MODE) LIMIT 1;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档