ブール値を返すコレクション名とそのコレクションを評価する式を動的に決定するクエリがあります。言う:
$my-collection
コレクションを指します。たとえば、文字列を含みます/db/my/collection
。- ブール式は
exists(/foo/bar)
です。
コレクション自体で実行できます。exists(/foo/bar)
コレクション内のドキュメントにが含まれているかどうかに応じて、trueまたはfalseのいずれかが返されます/foo/bar
。しかし、コレクション名が事前にわからない場合、どうすれば同じことができますか?
素朴に、私は試しcollection($my-collection)/exists(/foo/bar)
ました。ただしcollection()
、コレクション内のドキュメントノードを返すため、1つのブール値ではなく、コレクション内のドキュメントと同じ数のブール値が返されます。これは私が望んでいることではありません。さらに、私のコレクションには数万のドキュメントが含まれている可能性があるため、非常に遅くなる可能性があります。
では、代わりにこれをどのように書くべきですか?