gpt4 book ai didi

python - 如何选择PyMongo中的所有数据?

转载 作者:行者123 更新时间:2023-12-01 04:11:08 25 4
gpt4 key购买 nike

我想选择所有数据或在表随机中选择条件,但我在 Python 中的 MongoDB 中找不到任何指南来执行此操作。

而且我无法显示选择的所有数据。

这是我的代码:

def mongoSelectStatement(result_queue):
client = MongoClient('mongodb://localhost:27017')
db = client.random

cursor = db.random.find({"gia_tri": "0.5748676522161966"})
# cursor = db.random.find()
inserted_documents_count = cursor.count()

for document in cursor:
result_queue.put(document)

最佳答案

mongodb 有一个相当全面的文档。对于 python (Pymongo),URL 为:https://api.mongodb.org/python/current/

注意:请考虑您正在运行的版本。由于最新版本有新的特性和功能。

要验证您正在使用的 pymongo 版本,请执行以下命令:

import pymongo
pymongo.version
现在。关于您要求的选择查询。据我所知,您提供的代码很好。这是mongodb中的select结构。

首先它被称为find()

在 pymongo 中;如果你想选择特定的行(不是真正的在mongodb中它们被称为文档。我说行是为了使其易于理解。我假设你正在比较mongodb到 SQL);好吧,如果你想从表中选择特定文档(在 mongodb 中称为 collection),请使用以下结构(我将使用 random 作为集合名称;同时假设随机表具有以下属性:年龄:10、类型:忍者、类别:黑色、级别:1903):

db.random.find({ "age":"10"}) 这将返回年龄为 10 的所有文档。

您可以简单地通过用逗号分隔来添加更多条件

db.random.find({ "age":"10", "type":"ninja"}) 这将选择年龄为 10 且类型为 ninja 的所有数据。

如果您想获取所有数据,只需将其留空即可:

db.random.find({})

现在前面的示例显示了所有内容(年龄、类型、类(class)、级别和 _id)。如果您想显示特定属性,仅显示年龄,则必须添加另一个参数来查找称为投影的参数,例如:(1表示显示,0表示不显示):

{'age':1} 

请注意,这会返回年龄以及_id。默认情况下始终返回 _id。您必须明确告诉它不要将其返回为:

db.random.find({ "age":"10", "name":"ninja"  },  {"age":1, "_id":0} )

我希望这可以帮助您开始。看一下文档,说的很透彻。

关于python - 如何选择PyMongo中的所有数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34944760/

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