如何在查询中使用$ pow?

时间:2019-08-02 10:37:45

标签: pymongo

我必须查找上次访问时间少于$ 24 * 2 ** n $的文档,其中n是数据库中的字段。我无法使其正常工作,因此我构建了以下简化版本,其中我仅关注n = 0的情况以显示我在做什么以及为什么我说它不起作用。根据我的说法,以下两个代码应给出相同的结果

jsonstore.client[db][collection].find({'$where': 'this.last_access < 24'}).next()

jsonstore.client[db][collection].find({'$where': 'this.last_access < 24*{$pow: [2,0]}'}).next()

在第二个代码中,我将24乘以2 ** 0(试图乘以1)。但是,我没有得到相同的结果(事实上,第二次没有任何响应)。

我在做什么错?我觉得应该有一条命令将{$ pow:[2,0]}替换为可以对其进行评估的内容。

1 个答案:

答案 0 :(得分:0)

做到这一点的方法是

jsonstore.client[db][collection].find({'$where': 'this.last_access < 24*Math.pow(2,0)'})