-1

次の MongoDB コレクションがあるとします。

{id:1, data:"some_data"}
{id:2, data:"some_data"}
{id:3, data:"some_data"}
{id:4, data:"some_data"}

コレクションにない要素「6」を持つphp-arrayもあります

 $q = [1,3,6];

次のようにコレクションをクエリすると:

 $cursor = $db->col->find(['id' => ['$in' => $q]]);

ID が 1 と 3 のドキュメントを取得しています

しかし、id 6 がコレクションに存在しないため、空の結果が欲しいのですが、コレクションを完全に一致させるにはどうすればよいですか?

たった 1 つのクエリでこれを行うことはできますか?

4

2 に答える 2

0

idが一意の場合:

var result = db.col.find({id:{$in:q}});
if(result.count() == q.length) {
    //handle result
} else {
    //handle empty result
}
于 2013-11-03T02:00:53.967 に答える