如何在PyMongo中选择所有数据?

时间:2016-01-22 10:44:09

标签: python mongodb pymongo

我想选择所有数据或在表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)

1 个答案:

答案 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} )

我希望能让你开始。 看一下文档是非常彻底的。