Я пытаюсь выяснить, как получить список связанных тегов из сообщений блога, хранящихся в 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.Я ищу более эффективный способ.