我说的“标签相关”清单是什么意思?
让我们假设文章有三个标签: A,B,C。这个项目的“与标签相关”的文章将是有A,B,C标签的文章,然后是(A,B),(A,C),(B,C)等。
表:标记
tag_id
tag_title
tag_nicetitle表: tags2articles
article_id
tag_id使用此表结构太难计算真“由标签关联”。
我们可以再添加一个包含article_id的表,它是md5(A,B,C)。在散列之前,我们应该按字母对标签进行排序。
表: article_tags_hashed
id
article_id
md5
count这个表格将帮助我们找到包含确切标签集(A,B,C)的物品,但只包含(A,B),(A,C),(B,C)的物品无助于找到
什么是最佳做法?
对不起,我的英语很差。
发布于 2010-01-25 10:56:05
我不认为你需要article_tags_hashed,因为你可以对结果进行分组和计数
查询tags2articles.
示例:
select article_id, count(article_id) as tagcnt from tags2articles
where tag_id in (...)
group by article_id
order by tagcnt desc包含最多标签的文章将被放在第一位。
https://stackoverflow.com/questions/2131683
复制相似问题