我想选择所有数据或在表random
中使用条件选择,但我在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)
答案 0 :(得分:2)
有一个非常全面的mongodb文档。对于python(Pymongo),这里是URL:https://api.mongodb.org/python/current/
注意:请考虑您正在运行的版本。由于最新版本具有新的特性和功能。
要验证您正在使用的pymongo版本执行以下操作:
import pymongo
pymongo.version
现在。关于您要求的选择查询。据我所知,您提供的代码很好。这是mongodb中的选择结构。
首先,它被称为 find()。
在pymongo;如果你想在mongodb中选择特定的行(不真的行,它们被称为文档。我说的是行,以便于理解。我假设你正在比较mongodb到SQL);好吧如果你想从表格中选择特定的文件(在mongodb中称为集合),请使用以下结构(我将使用 random 作为集合名称;也假设随机table具有以下属性:年龄:10,类型:忍者,类:黑色,级别:1903 ):
db.random.find({ "age":"10" })
这将返回所有年龄为10岁的文件。
只需使用逗号
分隔即可添加更多条件 db.random.find({ "age":"10", "type":"ninja" })
这将选择10岁的所有数据并输入忍者。
如果你想获得所有数据,请留空:
db.random.find({})
现在前面的示例显示了所有内容(年龄,类型,类,级别和_id)。如果您想显示特定的属性,请说明只需要添加另一个参数来查找名为投影的年龄,例如:(1表示显示,0表示不显示):
{'age':1}
请注意,这会返回年龄以及 _id 。默认情况下始终返回_id。你必须明确告诉它不要把它作为:
返回db.random.find({ "age":"10", "name":"ninja" }, {"age":1, "_id":0} )
我希望能让你开始。 看一下文档是非常彻底的。