【发布时间】:2013-11-03 01:29:54
【问题描述】:
假设我们有以下 MongoDB 集合:
{id:1, data:"some_data"}
{id:2, data:"some_data"}
{id:3, data:"some_data"}
{id:4, data:"some_data"}
我还有一个 php 数组,其中元素“6”不在集合中
$q = [1,3,6];
如果我这样查询集合:
$cursor = $db->col->find(['id' => ['$in' => $q]]);
我正在获取 id 为 1 和 3 的文档
但我想要一个空结果,因为集合中不存在 id 6, 我怎样才能完全匹配集合?
我可以只用一个查询来做到这一点吗?
【问题讨论】:
-
如果
q = [1,3],你想得到什么? -
当然只有 id 为 1 和 3 的文档,但只是因为它们当前在集合中。
-
那么如果
q = [1,3,6],您希望find给您返回0、1、2 或3 个文档吗? -
正如我已经说过的,我想得到一个空结果,因为 id:6 不在集合中
-
好的,但这就像我从未见过的 SQL 查询或 Mongo 查询一样。
标签: php mongodb mongodb-query