好吧,我做了一些研究,发现了一个很好的归一化的文章和标签表应该是这样的:如何从数据库中检索多个标签?
articles table: article_id | article_text
tags table: tag_id | tag_text
article-tag table: article_id | tag_id
现在,我尝试做的是这样的:假设我正在寻找3个标签例如,“asp.net”,“.net”,“c#”。检索包含这些标签的文章非常容易。但我不想要这个。我想要的是找回物品具有正是这三个标签或任何两个或其中的一个但与4个或更多标签,包括他们的文章。我不想要“asp.net”,“.net”,“c#”,“ruby”的搜索结果。我只想要以下标记的文章:
"asp.net", ".net", "c#"
.net", "c#"
"asp.net", ".net"
"asp.net", "c#"
"c#"
"asp.net"
".net"
什么是正确的MySQL查询呢?
也许会做一个辅助功能来计算匹配标签(从允许标签列表中),然后根据计数为2或3来选择。 –
我也这么认为,并且我得出结论认为我确实需要对匹配标签进行计数。这是第一步,但其余的呢? 谢谢你的方式编辑帖子(我是一个新手:))。 – oguzkonya