python 包之 mongodb 数据库操作教程

亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述python 包之 mongodb 数据库操作教程相关的知识,希望能为你提供帮助。
一、安装

pip install pymongo



二、连接数据库
import pymongo

# 方式一
client = pymongo.MongoClient(mongodb://localhost:27017)
# 方式二
client = pymongo.MongoClient(localhost,27017)
# 方式三,有密码认证
client = pymongo.MongoClient(localhost, 27017, username=xxx, password=xxx)



三、创建数据库
import pymongo

# 连接
client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test # 或者 db = client[test]
print(db)



四、所有数据库
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
dbs = client.list_database_names()



五、创建集合
  • 也就是数据库中的表
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user # 或者 collections = db[user]
# 删除表
collections.drop()



六、插入数据
  • insert_one:插入一条数据
  • insert_many:插入多条数据
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 创建文档数据
user1 =
name: autofelix,
age: 25,
height: 172,
weight: 60


user2 =
name: 飞兔小哥,
age: 28,
height: 182,
weight: 70


# 插入一条文档集合
result = collections.insert_one(user1)
print(result)
print(result.inserted_id)

# 插入多条文档集合
result = collections.insert_many([user1, user2])
print(result)
print(result.inserted_ids)



七、查询数据
  • find:查询多条数据
  • find_one:查询一条数据
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 查询所有
collections.find()
# 查询最近一条
collections.find_one()
# 根据条件查询
collections.find_one(age:25)



八、高级查询
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 跳过第一条查到的数据
collections.find(age:$gt:10,[height,age]).skip(1)
# limit限制查询条数
collections.find(age:$gt:10,[height,age]).limit(1)
# 多条件查询
collections.find_one(height:$gt:150,age:$lt:26,$gt:10)
# in查询,查询年龄在25,26,32的数据
collections.find(age:$in:[25, 26, 32])
# or查询,查询年龄小于等于23或者大于等于29的数据
collections.find($or:[age:$lte:23, age:$gte:29])
# exists查询
collections.find(age:$exists:True)
# 正则查询
collections.find(name:$regex:r.*auto.*)

【python 包之 mongodb 数据库操作教程】

九、count统计
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 统计集合中总共有多少条数据
collections.find().count()
# 统计集合中年龄大于10岁的共有多少条数据
collections.find(age:$gt:10).count()



十、修改数据
  • update_one:修改一条数据
  • update_many:修改多条数据
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 修改一条数据
collections.update_one(name: autofelix, $set: name: 大神)
# 修改多条数据
collections.update_many(name: autofelix, $set: name: 大神)



十一、删除数据
  • delete_one:删除一条数据
  • delete_many:删除多条数据
import pymongo

client = pymongo.MongoClient(mongodb://localhost:27017)
# 创建test数据库
db = client.test
# 创建表
collections = db.user

# 删除一条数据
collections.delete_one(name:

    推荐阅读