【问题标题】:PHP Phalcon ODM mongodb where clausePHP Phalcon ODM mongodb where 子句
【发布时间】:2017-02-10 19:06:29
【问题描述】:

我是 mongodb 概念的新手。 我正在尝试通过 PHP Phalcon 的 ODM,更具体地说是 Phalcon\Mvc\Collection 的“聚合”方法,从 MongoDB 中的一个集合中获取文档。我正在尝试做的 MySQL 等价物如下所示:

SELECT * FROM nodes WHERE timestamp >= X AND timestamp < Y AND user_id = 25 
AND (type = "classic" OR type = "new")

这很简单(对于 MySQL)

MondoDB 的文档有所帮助,但在阅读此 https://docs.phalconphp.com/en/latest/reference/odm.html#aggregations

时,我似乎不清楚 Phalcon 对“聚合”方法的输入的期望

我也尝试了 Phalcon\Mvc\Collection 的“查找”方法,但它要么抛出错误,要么返回与条件不匹配的文档。

【问题讨论】:

  • 你不是在计算东西,所以你不需要使用“聚合”函数。您在使用“find”方法时遇到了什么错误?

标签: php mongodb phalcon multiple-conditions odm


【解决方案1】:

您没有提供任何您尝试过的代码,这使得您更难理解您想要实现的目标。但是,这样的事情会起作用吗?

$nodes = NodesCollection::find([
    [
        'timestamp' => [
            '$gte' => X,
            '$lt'  => Y
        ],
        'user_id' => 25
    ]
]);

此示例中要注意的关键是 Mongo 比较运算符的使用。 你可以在这里了解更多信息:https://docs.mongodb.com/manual/reference/operator/query-comparison/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-07
    • 1970-01-01
    • 2017-11-30
    • 2016-08-26
    • 2016-10-14
    • 2018-06-15
    • 2021-01-09
    • 2016-05-28
    相关资源
    最近更新 更多