0

我正在用 PHP 编写脚本并尝试转换 SQL

SELECT COUNT(*) AS Rank  
FROM user    
WHERE  user.lvl > $user_level

向 Mongo 查询。

我发现只有一个决定:

$nosql = array(
     'lvl' => array('$gt' => $user_level)
);    
$result = $collection->find($nosql);
$length = count(iterator_to_array($result));
  1. 获取所有满足条件的对象
  2. 并在 PHP 中计算它们

可以在不发送所有数组的情况下获得所需对象的数量吗?

4

2 回答 2

3

mongodb 可能会count产生这样的结果,您不需要使用count(iterator_to_array($result));

$nosql = array(
 'lvl' => array('$gt' => $user_level)
);    
$result = $collection->find($nosql);
$length = $result->count();
于 2013-04-10T10:52:48.027 回答
1

新驱动没有实现 $cursor->count()use$collection->count()而是

$collection->count($filter)
于 2016-11-01T18:39:40.517 回答