脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python 操作 mongodb 数据库详情

python 操作 mongodb 数据库详情

2022-12-02 14:26autofelix Python

这篇文章主要介绍了python 操作 mongodb 数据库详情,通过链接数据库,创建数据库展开内容详细,具有一定的参考价值,需要的的小伙伴可以参考一下

一、安装

?
1
pip install pymongo

二、连接数据库

?
1
2
3
4
5
6
7
8
import pymongo
 
# 方式一
client = pymongo.MongoClient('mongodb://localhost:27017')
# 方式二
client = pymongo.MongoClient('localhost'27017)
# 方式三,有密码认证
client = pymongo.MongoClient('localhost', 27017, username='xxx', password='xxx')

三、创建数据库

?
1
2
3
4
5
6
7
import pymongo
 
# 连接
client = pymongo.MongoClient('mongodb://localhost:27017')
# 创建test数据库
db = client.test # 或者 db = client['test']
print(db)

四、所有数据库

?
1
2
3
4
import pymongo
 
client = pymongo.MongoClient('mongodb://localhost:27017')
dbs = client.list_database_names()

五、创建集合

  • 也就是数据库中的表
?
1
2
3
4
5
6
7
8
9
import pymongo
 
client = pymongo.MongoClient('mongodb://localhost:27017')
# 创建test数据库
db = client.test
# 创建表
collections = db.user # 或者 collections = db['user']
# 删除表
collections.drop()

六、插入数据

  • insert_one:插入一条数据
  • insert_many:插入多条数据
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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:查询一条数据
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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})

八、高级查询

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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.*'}})

九、count统计

?
1
2
3
4
5
6
7
8
9
10
11
12
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:修改多条数据
?
1
2
3
4
5
6
7
8
9
10
11
12
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:删除多条数据
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import pymongo
 
client = pymongo.MongoClient('mongodb://localhost:27017')
# 创建test数据库
db = client.test
# 创建表
collections = db.user
 
# 删除一条数据
collections.delete_one({'name': 'autofelix'})
# 删除多条数据
collections.delete_many({'name': 'autofelix'})
# 删除所有数据
collections.delete_many({})

十二、数据排序

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import pymongo
 
client = pymongo.MongoClient('mongodb://localhost:27017')
# 创建test数据库
db = client.test
# 创建表
collections = db.user
 
# 对字段 age 按升序排序
collections.find().sort('age')
# 对字段 age 按降序排序
collections.find().sort('age', -1)
# 多字段排序
collections.find().sort((('age',pymongo.ASCENDING),('height',pymongo.ASCENDING)))

到此这篇关于python 包操作 mongodb 数据库详情的文章就介绍到这了,更多相关python 操作mongodb内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.51cto.com/autofelix/5195732

延伸 · 阅读

精彩推荐
  • PythonPython生成器generator用法示例

    Python生成器generator用法示例

    这篇文章主要介绍了Python生成器generator用法,结合实例形式分析了Python生成器generator常见操作技巧与相关注意事项,需要的朋友可以参考下...

    喷跑的豆子6622021-03-27
  • PythonPython 文本滚动播放器的实现代码

    Python 文本滚动播放器的实现代码

    这篇文章主要介绍了Python 文本滚动播放器的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...

    海 月4622021-10-20
  • PythonPython 获取ftp服务器文件时间的方法

    Python 获取ftp服务器文件时间的方法

    今天小编就为大家分享一篇Python 获取ftp服务器文件时间的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    昵称最烦了13502021-07-29
  • Python详解python字符串驻留技术

    详解python字符串驻留技术

    在本文中,我们将深入研究 Python 的内部实现,并了解 Python 如何使用一种名为字符串驻留(String Interning)的技术,实现解释器的高性能。...

    华为云开发者社区4252021-11-09
  • Python自动化测试Pytest单元测试框架的基本介绍

    自动化测试Pytest单元测试框架的基本介绍

    这篇文章主要介绍了Pytest单元测试框架的基本介绍,包含了Pytest的概念,Pytest特点,其安装流程步骤以及相关配置流程,有需要的朋友可以参考下...

    软件测试自动化测试7592021-12-24
  • Python利用Python实现读取Word表格计算汇总并写入Excel

    利用Python实现读取Word表格计算汇总并写入Excel

    这篇文章主要给大家介绍了关于如何利用Python实现读取Word表格计算汇总并写入Excel的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具...

    XieJava11282022-09-01
  • Pythonpython实现将文本转换成语音的方法

    python实现将文本转换成语音的方法

    这篇文章主要介绍了python实现将文本转换成语音的方法,涉及Python中pyTTS模块的相关使用技巧,需要的朋友可以参考下...

    不吃皮蛋13002020-07-09
  • Python利用python将pdf输出为txt的实例讲解

    利用python将pdf输出为txt的实例讲解

    下面小编就为大家分享一篇利用python将pdf输出为txt的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    n不正6152021-02-04