这是表topics
:
id
label
这是表articles
:
id
label
content
topic_id
(外键)这是表comments
:
id
content
article_id
(外键)现在,我想实现一个搜索功能,该功能可以生成搜索词(LIKE%term%)包含在
中的所有文章label
或content
label
content
属于本文的评论我认为解决方案可能与JOINS有关,但我绝对不知道如何做到这一点。有人可以帮忙吗?
非常感谢任何帮助!
答案 0 :(得分:1)
我猜你是新手,不想实施“全文搜索”解决方案。因此,一个简单的SQL将是:
select a.*
from topics t
join articles a on a.topic_id = t.id
join comments c on c.article_id = a.id
where a.label like '%term%'
or a.content like '%term%'
or t.label like '%term%'
or c.content like '%term%'
请注意,在处理大量或主题,文章或评论时,此SQL解决方案的性能不佳。但是,它会运行良好,并会返回您想要的文章。