簡體   English   中英

Mongo DB聚合日期過濾器不起作用

[英]Mongo DB aggregation date filter not working

我正在嘗試通過 pymongo 過濾 MongoDB 上的日期。 專門尋找“匹配”大於給定日期的所有日期。 我的查詢絕對正確,因為它在 MongoDB 羅盤 - 聚合中完美查詢。 但是,一旦我將它添加到我的 pymongo 代碼中,它就會返回零結果。 所以如上所述它不起作用,所以我通過指南針應用程序確認我的查詢字符串實際上是正確的,請協助,我下面的代碼是我用來在指南針中查詢的代碼,下面是我的完整聚合管道在 pymongo - 這不起作用。 (順便說一句:我的日期格式正確存儲在 mongo - 作為“日期”)

{
// MongoDB compass code - works fine.

"date": {"$gt": new Date("2020-12-06T00:00:00.000+00:00")}

}

//Pymongo code

betdate = weekcol.aggregate([
    ## stage 1
    {"$match":{
  
"date": {"$gt": new Date("2020-12-06T00:00:00.000+00:00")}

    }        }
        
])

for bdate in betdate:
    print(bdate)

上面的 pymongo 代碼向我拋出了錯誤:

文件 "",第 9 行 "date": {"$gt": new Date("2020-12-06T00:00:00.000+00:00")} SyntaxError: 無效語法

我有一種感覺是新的 date() 有問題,但我將其更改為 ISODate(),它仍然無法正常工作。

pymongo 中的等價物是:

import datetime
import pytz

filter1 = {"date": {"$gt": datetime.datetime(2020, 12, 6, 0, 0, tzinfo=pytz.utc)}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM