小编tou*_*hmx的帖子

如何使用pymongo在mongodb中创建查询日期?

我正在尝试在mongodb中执行查询日期,但结果始终为空.我的查询如下:

//in the begin code
def __init__(self):
    self.now = datetime.now()
    self.db = conexaoMongo()
    self.horaInicio = self.now - timedelta(minutes=1)

def resultadoConsulta(self, modo, porta, id_node):
    #print "Porta e No ", porta, id_node
    resultadoMongo = []
    mediaFinal = False      
    try:

        json = {'id_no': int(id_node), 'datahora': {'$gte': self.horaInicio, '$lt': self.now}, 'porta': porta}

        print "COnsulta a ser realizada: ", json
        resultadoMongo = self.db.queryMongoOne(json) 
Run Code Online (Sandbox Code Playgroud)

//变量resultaMongo返回空.

Obs:我也尝试过不使用.isoformat()当我直接输入mongodb时,如果我添加ISODate只返回结果.所以不返回结果:

db.inoshare.find( {'id_no': 1, 'datahora': {'$lte': '2014-09-24T07:52:04.945306', '$gte': '2014-09-24T07:51:04.958496'}, 'porta': 'A0'})
Run Code Online (Sandbox Code Playgroud)

如果您编辑返回更多信息:

db.inoshare.find( {'id_no': 1, 'datahora': {'$lte': ISODate('2014-09-24T07:52:04.945306'), '$gte': ISODate('2014-09-24T07:51:04.958496')}, 'porta': …
Run Code Online (Sandbox Code Playgroud)

python mongodb nosql pymongo

11
推荐指数
2
解决办法
4万
查看次数

使用pymongo在mongodb中按时间范围查询

需要在数据库mongodb上执行查询,以按时间范围生成一组结果。我正在使用pymongo。我的查询如下:

query = {"$and": [
                     {"id_node": id_node}
                     {"port": port},
                     {"datetime": {"$gte": self.hourBegin}}
                     {"datetime": {"$lte": self.now}}
                     ]}
listResults = db.mycollection.find (query)
Run Code Online (Sandbox Code Playgroud)

我也尝试过这种方式:

query = {"id_node": int(id_node)
                     "port": port,
                     "datetime": {"$gte": self.hourBegin, "$lte": self.now}}
listResults = db.mycollection.find (query)
Run Code Online (Sandbox Code Playgroud)

但是结果总是空的。直接在mongodb中测试,但结果为空。我确定数据存在于数据库中,且该时间范围是我正在研究的时间范围。

可能的结果列表:

{ "_id" : ObjectId("543618c6e7b9914c35266128"), "lab" : "2", "port" : "A1", "id_node" : 1, "datetime" : ISODate("2014-09-26T18:28:04Z"), "valor" : "22.00", "sensor" : "2" }
{ "_id" : ObjectId("543618c6e7b9914c35266129"), "lab" : "2", "port" : "A0", "id_node" : 1, "datetime" : ISODate("2014-09-26T18:28:04Z"), "valor" : "0", …
Run Code Online (Sandbox Code Playgroud)

python mongodb pymongo

4
推荐指数
1
解决办法
3385
查看次数

标签 统计

mongodb ×2

pymongo ×2

python ×2

nosql ×1