gpt4 book ai didi

python - Studio3t 中的查询与 Pymongo 中的查询之间的区别?

转载 作者:可可西里 更新时间:2023-11-01 10:41:00 27 4
gpt4 key购买 nike

我有一个包含集合 users id,...,subscribedFlux 的数据库。每个 id 可以有多个 subscribedFlux 我想知道有多少 Flux 被订阅了。该查询在 Studio3t 中运行良好,给出了预期的结果:

当我使用 Pymongo 执行此操作时,我什么也没得到:

:~$ python testMongoDB.py 
/home/antoine/anaconda2/lib/python2.7/site-packages/pymongo/common.py:555: UserWarning: Unknown option 3t.databases
warnings.warn(str(exc))
/home/antoine/anaconda2/lib/python2.7/site-packages/pymongo/common.py:555: UserWarning: Unknown option 3t.uriVersion
warnings.warn(str(exc))
/home/antoine/anaconda2/lib/python2.7/site-packages/pymongo/common.py:555: UserWarning: Unknown option 3t.connectionMode
warnings.warn(str(exc))
/home/antoine/anaconda2/lib/python2.7/site-packages/pymongo/common.py:555: UserWarning: Unknown option 3t.connection.name
warnings.warn(str(exc))

这是我正在使用的脚本(我已经隐藏了数据库地址):

#! /usr/bin/python

import pymongo
import datetime
import pprint

from pymongo import MongoClient


client = MongoClient('mongodb://swiper_read:swiper_read@3...ESCONDIDO')

db = MongoClient().aggregation_example
cursor = db.users.aggregate(
[
#{"$match": {"subscribedFlux": { "$exists": "true" }}},
{"$group": {"_id": "$subscribedFlux", "count": {"$sum": 1}}}
]
)

for document in cursor:
print (document)

最佳答案

您不应该像现在使用 3t.databases3t.uriVersion 等那样将“未知”选项传递给您的 MongoDB URI... 相反,试试这个:

client = MongoClient('mongodb://user:pass@ip:port/')  # pass just these options

db = client.DATABASE_NAME # or client['DATABASE_NAME']
cursor = db.TABLE_NAME.aggregate(
[
#{"$match": {"subscribedFlux": { "$exists": "true" }}},
{"$group": {"_id": "$subscribedFlux", "count": {"$sum": 1}}}
]
)

关于python - Studio3t 中的查询与 Pymongo 中的查询之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44242196/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com