【问题标题】:SQL - WHERE MATCH querySQL - WHERE MATCH 查询
【发布时间】:2020-05-06 21:46:42
【问题描述】:

我有 SQL 查询 -

SELECT id, text FROM some_table WHERE  MATCH (text, keywords) AGAINST ('".$search."' IN BOOLEAN MODE)

我不太明白“IN BOOLEAN MODE”和“IN NATURAL LANGUAGE MODE”之间的区别。

我试图阅读它,但仍然没有得到它。

能否请您解释一下,或者提供一个例子?

【问题讨论】:

  • 请提供更具体的问题。 MySQL 文档付出了很多努力来明确这一点。如果您有什么特别不明白的地方,请询问。
  • 它使您可以在搜索词上添加运算符 例如:mysqltutorial.org/mysql-boolean-text-searches.aspx 您到底想做什么?

标签: php mysql sql


【解决方案1】:

只需在 mySQL 文档中阅读它: 全文布尔模式: https://dev.mysql.com/doc/refman/8.0/en/fulltext-boolean.html

全文自然语言模式: https://dev.mysql.com/doc/refman/8.0/en/fulltext-natural-language.html

总而言之,布尔模式使用 + 和 - 运算符并且更加“严格”。 自然语言模式会根据您的搜索返回最“相关”的行。

【讨论】:

  • 谢谢。所以如果我有一个常见问题的搜索表单,我会使用“自然语言模式”更好吗?
  • 是的,我更喜欢常见问题搜索中的自然语言模式。如果这是解决您问题的答案,请单击复选标记进行确认。
猜你喜欢
  • 2013-05-21
  • 1970-01-01
  • 2011-12-03
  • 1970-01-01
  • 2015-10-30
  • 2021-12-31
  • 2021-02-11
  • 2021-12-22
  • 1970-01-01
相关资源
最近更新 更多