如何通过关键字mysql搜索

时间:2018-08-04 16:05:41

标签: mysql database search keyword

我做了2张桌子 1)存储的关键字 2)具有文章标题和关键字

在商品表中,我以设置形式(例如(1,2,3,6,7))存储关键字ID

现在我想按用户价值的最大出现率通过关键字和标题进行搜索;

示例 关键字表 笔-1 纸-2 铅笔-3 A4 -4 标记-5

文章表 标题关键字 神奇铅笔纸1,2,4

用户搜索神奇笔

如何有效搜索

1 个答案:

答案 0 :(得分:1)

最好的解决方案是使该字段不应包含逗号分隔的所有关键字值,例如1,2,3,4

您应该管理其多对多表

例如:

  • 关键字
  • 文章
  • keywords_to_articles(id,keyword_id,article_id)

这样做之后,您的数据库将处于第三范式,并且通过执行

可以轻松执行查询。
select a.*
from articles a
join keywords_to_articles ka on ka.article_id = a.id
join keywords k on k.id = ka.keyword_id and k.name = '$keyword'

在这里,我假设您在关键字表中存储了name字段。

进行上述操作将是一种有效的方法。