python - 使用 pymongo 转换 Mongodb 类型的 Sql 查询
问题描述
大家好,我想知道我是否已正确地将其转换sql query
为mongodb
类型。我在 mongodb 中得到的结果较少,这是不对的。我使用 python 进行查询。sql
查询是这样的:
select *
from oneindextwocolumns
where timestamp1>='2010-01-01 00:05:00'
and timestamp1<='2015-01-01 00:05:00' and id13>5
我已经像这样转换了它:
mydb1.mongodbbucketright.find(
{"samples.timestamp1": {"$gte": datetime.strptime("2010-01-01 00:05:00", "%Y-%m-%d %H:%M:%S"),
"$lte": datetime.strptime("2015-01-01 00:05:00", "%Y-%m-%d %H:%M:%S")},
"samples.id13":{"$gt":5}},
{"samples.$": 1 })
我的 mongodb 数据如下所示:
{'_id': ObjectId('6068da8878fa2e568c42c7f1'),
'samples': [{'c14': 'C',
'id1': 3758.0,
'id10': 0.0,
'id11': 274.0,
'id12': 0.0,
'id13': 7.5,
'id15': 0.0,
'id16': 73.0,
'id17': 0.0,
'id18': 0.342,
'id19': 6.3,
'id20': 1206.0,
'id21': 0.0,
'id22': 0.87,
'id23': 0.0,
'id6': 2.0,
'id7': -79.09,
'id8': 35.97,
'id9': 5.8,
'timestamp1': datetime.datetime(2018, 1, 24, 14, 5),
'timestamp2': datetime.datetime(2018, 1, 24, 9, 5)},
{'c14': 'C',
'id1': 3758.0,
'id10': 0.0,
'id11': 288.0,
'id12': 0.0,
'id13': 8.4,
'id15': 0.0,
'id16': 71.0,
'id17': 0.0,
'id18': 0.342,
'id19': 6.3,
'id20': 1207.0,
'id21': 0.0,
'id22': 0.69,
'id23': 0.0,
'id6': 2.0,
'id7': -79.09,
'id8': 35.97,
'id9': 6.2,
'timestamp1': datetime.datetime(2018, 1, 24, 14, 10),
'timestamp2': datetime.datetime(2018, 1, 24, 9, 10)},
.
.
.
.
你怎么看?位置投影在这里有帮助吗?提前致谢!
解决方案
推荐阅读
- azure - Hadoop API 使用 pyspark 下载文件
- python - 如何以正确的格式显示“玩家摘要”?
- java - FCM 不会发出通知
- google-apps-script - 链接到按钮的 Apps 脚本
- csv - 如何从 S3 存储桶中读取最后修改的 csv 文件?
- laravel - TypeError:无法读取 Vue 中未定义的属性“id”
- python - 如何检查元素在列表中的位置
- python - Python Pandas:我可以使用动态文件路径通过用户输入导入 CSV 吗?
- mysql - 限制每个“在哪里”匹配的结果
- excel - 通过 VBA 调试进入不同的函数