Python 操作 MongoDB 数据库!

Posted AI科技大本营

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 操作 MongoDB 数据库!相关的知识,希望对你有一定的参考价值。

作者 |黄伟呢

来源 |数据分析与统计学之美

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

先来看看mysql与MongoDB 概念区别:

今天的重点,就是要为大家讲述如何使用Python操作MongoDB数据库。

在正式进行增删改查之前,我们需要先获取一个叫做集合的东西,它就像是mysql数据库中的表。

# 安装该库后,这里才能导入
from pymongo import MongoClient
# 连接服务器
conn = MongoClient("localhost",27017)
# 连接数据库
db = conn.mydb
# 获取集合
collection = db.student

... 中间进行一系列操作:增删改查 ...

# 断开连接【最后一步】
conn.close()

注意:Python 中写MongoDB代码和在MongoDB客户端写的代码格式一样。

区别在于:在Python中写MongoDB代码,所有“键”都需要添加引号。

插入文档

① 一次性插入一个文档
collection.insert_one({"name": "abc","age": 19,"gender": 1,"adress": "北京","isDelete": 0})
② 一次性插入多个文档
collection.insert_many([{"name": "abc1","age": 19,"gender": 1,"adress": "北京
","isDelete": 0},{"name": "abc2","age": 19,"gender": 1,"adress": "北京","isDelete":0}])

删除文档

# 删除某条文档
collection.remove({"name": "lilei"})

# 不写条件,代表全部删除。不要轻易用
collection.remove()

修改文档

# 修改文档
collection.update({"name": "lilei"},{"$set": {"age": 25}})

查询文档

这里一共为大家列出了7条。

① 查询部分文档
res = collection.find({"age": {"$gte": 19}})
for row in res:
   print(row)
② 查询所有文档
res = collection.find()
for row in res:
   print(row)
③ 统计查询
res = collection.find().count()
print(res)
④ 根据 id 查询(这需要引入第三方库)
from bson.objectid import ObjectId
res = collection.find({"_id":ObjectId("5cc506289e1d88c95465488e")})
print(res[0])
⑤ 升序排序
res = collection.find().sort("age")
for row in res:
   print(row)
⑥ 降序排序(也需要引入第三方库)
import pymongo
res = collection.find().sort("age",pymongo.DESCENDING)
for row in res:
   print(row)
⑦ 分页查询
res = collection.find().limit(3).skip(5)
for row in res:
   print(row)

资讯

观点:AI与自动化是矛盾的

资讯

阿里云投入 20 亿发力操作系统

资讯

阿里发布云芯片倚天710

技术

ST-GCN 实现人体姿态行为分类

分享

点收藏

点点赞

点在看

以上是关于Python 操作 MongoDB 数据库!的主要内容,如果未能解决你的问题,请参考以下文章

python3操作MongoDB的crud以及聚合案例,代码可直接运行(python经典编程案例)

python3操作MongoDB的crud以及聚合案例,代码可直接运行(python经典编程案例)

MongoDB分片

mongodb2.2.0升级到3.4.10操作记录

MongoDB: 分片sharding

MongoDB分片管理