Python操作MongoDB

安装

pip install pymongo

1、导入 pymongo

from pymongo import MongoClient

2、连接服务器 端口号 27017

(1) 连接MongoDB

连接MongoDB我们需要使用PyMongo库里面的MongoClient,一般来说传入MongoDB的IP及端口即可,第一个参数为地址host,第二个参数为端口port,端口如果不传默认是27017。

(2) 代码
conn = MongoClient("localhost")

MongoClient(host='127.0.0.1',port=27017)  # 如果端口改了那么就给端口,否则不用给

3、连接数据库

db = conn.数据库名称
连接集合
collection = db.collection_name

4、插入数据

(1) 在3.x以上 建议 使用

insert_one 插入一条数据

insert_many() 插入多条数据

(2) 返回 id 使用insert_one()

data.inserted_id

data.inserted_ids

5、查询数据

(1) 查询一条

db.user.find_one()

(2) 带条件查询

db.user.find({"name":"张三"})

(3) 查询 id

from bson.objectid import ObjectId*#用于ID查询

data = db.user.find({"_id":ObjectId("59a2d304b961661b209f8da1")})

data = db.user.find({'_id': ObjectId('59f290b01683f9339214746d')}) #_id': ObjectId('59f290b01683f9339214746d')
(5) 模糊查询
  • {"name":{'$regex':"张"}}

  • {'xxx':re.compile('xxx')}

6、sort limit skip

(1) sort 排序

年龄 大于10

data = db.user.find({"age":{"$gt":10}}).sort("age",1) #年龄 升序 查询  pymongo.ASCENDING   --升序

data = db.user.find({"age":{"$gt":10}}).sort("age",-1) #年龄 降序 查询    pymongo.DESCENDING --降序
(2) limit 取值
取三条数据
db.user.find().limit(3)
m= db.user.find({"age":{"$gt":10}}).sort("age",-1).limit(3)
(3) skip 从第几条数据开始取

db.user.find().skip(2)

7、update 修改

update()方法其实也是官方不推荐使用的方法,在这里也分了update_one()方法和update_many()方法,用法更加严格,

(1) update_one() 第一条符合条件的数据进行更新

db.user.update_one({"name":"张三"},{"$set":{"age":99}})

(2) update_many() 将所有符合条件的数据都更新

db.user.update_many({"name":"张三"},{"$set":{"age":91}})

(3) 其返回结果是UpdateResult类型,然后调用matched_countmodified_count属性分别可以获得匹配的数据条数和影响的数据条数。

  • result.matched_count

  • result.modified_count

8、remove 删除

删除操作比较简单,直接调用remove()方法指定删除的条件即可,符合条件的所有数据均会被删除,

(1) 删除一条

delete_one()即删除第一条符合条件的数据

collection.delete_one({“name”:“ Kevin”})

(2) 删除多条

delete_many()即删除所有符合条件的数据,返回结果是DeleteResult类型

collection.delete_many({“age”: {$lt:25}})

(4) 可以调用deleted_count属性获取删除的数据条数。

result.deleted_count

9、关闭连接

conn.close()

posted @ 2023-07-10 09:49  星尘yuan  阅读(43)  评论(0编辑  收藏  举报