mongodb odm如何获得一列的最高价值?

时间:2014-02-09 13:36:14

标签: mongodb doctrine-odm

我写了这个,但我认为这是错误的方式。

    $lastPointContent = $dm->createQueryBuilder('PointContent')
        ->sort('pageNumber','desc')->limit(1)->getQuery()->getSingleResult();

我找不到任何其他方法让它看起来更好。

1 个答案:

答案 0 :(得分:2)

我并不完全了解关于Mongo的doctrine-odm或PHP的语法,但在我看来,你必须做的是:

  1. 查找特定集合
  2. 将其排序为-1您想要的字段
  3. 将其限制为1
  4. 检查是否有下一个'查询中的元素,如果有,则获取它 - 它是最大值!
  5. 看起来像你正在演绎那样,对于mongo而言,对于整个查询来说,不像SQL那样 max()。 MongoDB中的 max 表示将查询限制为上限。

    tl; dr :您描述的方法是正确的IMO。

    如果我说错了,请告诉我