私はpymongoを使用していますが、他のクエリパラメータも渡すことができるように、フィールドに個別の値が必要です。たとえば、次のようなエントリがあります。
{
id = "my_id1"
tags: [tag1, tag2, tag3],
category: "movie",
}
{
id = "my_id2"
tags: [tag3, tag6, tag9],
category: "tv",
}
{
id = "my_id3"
tags: [tag2, tag6, tag8],
category: "movie",
}
そのため、映画カテゴリの下にすべての個別のタグが必要です。誰もpymongoを使用してこれを達成する方法をガイドできますか? mongo javascript Shellでは、db.mycoll.distinct( 'tags'、{category: "movie"})を発行しましたが、問題なく動作しました。しかし、私がpymongoで同じことをすると、エラーが発生します。 pymongoではサポートされていないと思います。しかし、そのようなタスクをどのように達成できるかについては、任意のアイデアです。
distinct
呼び出しを行う必要があります カーソル上 コレクションではなくfind
から返されます:
tags = db.mycoll.find({"category": "movie"}).distinct("tags")
pymongo(v1.1.1以降)は collection.distinct('key')
をサポートします