Sql 三表联接

Sql 三表联接,sql,Sql,我有三张桌子 一个是文章,一个是文章标签,还有一个表链接这些表,因为这是一个多对多关系。每篇文章都有一些标记,为了保持标记表的小和数据的整数,我需要一个表将它们链接在一起 现在,我必须在标签中搜索某些关键字,并选择链接到这些标签的文章。最有效的方法是什么?以下是表格的视觉演示: 搜索文章/文档的最有效方法是而不是使用关系数据库。这不是我的强项。例如,SOLR就非常适合这样做 但是: 你可以做c.tag\u name={$cleaned\u input\u tag\u name} 在语句中的或类似

我有三张桌子

一个是文章,一个是文章标签,还有一个表链接这些表,因为这是一个多对多关系。每篇文章都有一些标记,为了保持标记表的小和数据的整数,我需要一个表将它们链接在一起

现在,我必须在标签中搜索某些关键字,并选择链接到这些标签的文章。最有效的方法是什么?以下是表格的视觉演示:


搜索文章/文档的最有效方法是而不是使用关系数据库。这不是我的强项。例如,SOLR就非常适合这样做

但是:

你可以做
c.tag\u name={$cleaned\u input\u tag\u name}

在语句中的
或类似于
语句的

您尝试了什么?不一定是“最有效的方式”,而是一种方式。
SELECT
   a.id
FROM
   article a
  join
   article_tags b
  on
   a.id = b.article_id
  join
   tags c
  on
   b.tag_id = c.id
where
  c.tag_name = {$cleaned_input_tag_name}