よくわかりませんが、を使用して、JavaScriptでいつでも処理できます。 $where
:
jsStr = """var doc = this;
return ['result1','result2','result3']
.every(function(key) {
return doc.hasOwnProperty(key)
});"""
coll.find({ "$where": jsStr })
ただし、どこかをチェックするには、「キー」の配列を指定する必要があります。
入力するキーがたくさんあると思われる場合は、クエリ式を「構築」してみませんか。
whitelist = [ "result1", "result2", "result3" ]
query = {}
for key in whitelist:
query[key] = { "$exists": True }
coll.find(query)
これにより、入力が少し節約されます。MongoDBクエリはすべてデータ構造であるため、基本的なデータ操作を使用してクエリを作成するのは理にかなっています。