【发布时间】:2011-01-06 05:45:46
【问题描述】:
我试图弄清楚如何从存储在 MongoDB 中的博客文章中获取相关标签的列表。
数据结构
{
title: "Post #1",
tags: { "news", "politics" }
},
{
title: "Post #2",
tags: { "news", "entertainment" }
},
{
title: "Post #3",
tags: { "entertainment", "music", "theatre" }
},
{
title: "Post #4",
tags: { "entertainment", "music", "concerts" }
}
期望的结果
如果我想获取与“娱乐”相关的标签列表,它会查询帖子以查找相似的标签。当帖子被标记为“娱乐”时也会使用类似的标签。
我希望能够得到以下结果:
Tag Count
======== ======
music 2 (because there are 2 posts tagged with music + entertainment)
concert 1
theatre 1
news 1
有没有办法让它尽可能接近?我能得到的最接近的是使用db.posts.find({tags: "entertainment"});,然后循环并在MongoDb之外构造这些值。我正在寻找更有效的方法。
【问题讨论】:
标签: mongodb