【问题标题】:Mongo Query Builder Skip is completely ignored. Bug?Mongo Query Builder Skip 被完全忽略。漏洞?
【发布时间】:2013-01-08 08:14:47
【问题描述】:

以下示例:http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/query-builder-api.html

我有:

$dm = $this->get('doctrine.odm.mongodb.document_manager');
$query = $dm->createQueryBuilder('MainClassifiedBundle:Listing')->field('residentialOrCommercial')->equals($residentialOrCommercial);
        if ($propertyType != 'All Property Types')
            {
            $query->field('propertyType')->equals($propertyType);
            }

        $query->field('askingPrice')->range($minPrice, $maxPrice)->field('coordinates')->geoNear((float)$longitude, (float)$latitude)->spherical(true);

                if($radius!=0)
                {
                      $query->maxDistance($radius);
                }
        $classifieds = $query->limit(5)->skip(2)->getQuery()->execute();

一切正常,但跳过字段没有任何区别。无论我输入 1 还是 1000,我都会得到相同的结果集。

我错过了什么?

更新:我还在另一个文档集合上进行了测试,发现它有效。对我来说,geoNear 的某些东西让我很困惑。

【问题讨论】:

    标签: mongodb mongodb-php doctrine-mongodb


    【解决方案1】:

    geoNear 是一个数据库命令,而不是查询运算符。因此,limit() 和 skip() 修饰符不适用于它。详情请见SERVER-3925

    如果您想在 MongoDB 中看到此功能,请关注并投票给 Jira 票。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-19
      • 1970-01-01
      • 2022-06-15
      • 2011-10-19
      • 1970-01-01
      • 1970-01-01
      • 2021-08-27
      • 2014-09-03
      相关资源
      最近更新 更多