首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在过去10天内从数据库字段中获取值的数目

如何在过去10天内从数据库字段中获取值的数目
EN

Stack Overflow用户
提问于 2020-03-21 08:02:54
回答 2查看 38关注 0票数 0

我有一个数据库,其中包括id、名称、单元、日期和时间等字段。

编号:01名称:水务单位:kel日期及时间: 2020-03-21 13:26:25.885758

像这样,我有大约50个数据元素在我的数据库中,具有不同的日期和时间。

我试着从今天开始生成最后10天,但是我不知道如何处理数据库的日期和时间。

我要清点最后10天的日期和时间。

例如,如果我有50条记录和12条记录从今天到持续10天,我需要12的结果。

怎么在比蒙戈做这件事?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-21 17:40:41

先前的答案startend是相反的,但概念是正确的。OP还想要伯爵。因此,我们将把这一项和个人项目结合起来,假设没有自然排序,因此我们将增强使用sort()limit()的答案。

代码语言:javascript
复制
from datetime import datetime, timedelta
import pymongo

client = pymongo.MongoClient("mongodb://yourConnectionString")
coll   = client.yourDB.yourCollection

end = datetime.now()
start = end - timedelta(days=10)

start = end - timedelta(days=10)

#  This is the count:                                                                                               
count = coll.find({'dt': {'$gte': start, '$lt': end}}).count()
print "count",count

#  To show the material, sorted recent-first and with a limit just for fun:                                         
for doc in coll.find({'dt': {'$gte': start, '$lt': end}}).sort('dt',-1).limit(6):
    print doc
票数 0
EN

Stack Overflow用户

发布于 2020-03-21 08:49:49

可以使用日期时间库获取今天的日期时间,然后将其用作查询的输入

代码语言:javascript
复制
from datetime import datetime, timedelta

start = datetime.now()
end = start - timedelta(days=10)

for doc in db.your_collection.find({'date_time': {'$gte': start, '$lt': end}}):
    print doc
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60785675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档