MongoDB pymongo模块 查询
查询
mongo_db 类似于 服务器命令行的db
我们可以db.user.find() 查询
find()
需要加上列表
import pymongo mongo_client = pymongo.MongoClient(
host='192.168.0.112',
port=27017,
username="admin",
password=""
) mongo_db = mongo_client["db1"]
# 查询
res = mongo_db.user.find()
res = list(res)
print(res)
返回结果,和服务器一样的
[
{'_id': ObjectId('5ca7a4b0219efd687462f965'), 'id': 1.0, 'name': 'jack', 'age': 73.0},
{'_id': ObjectId('5ca7a4b7219efd687462f966'), 'id': 2.0, 'name': 'mike', 'age': 84.0, 'gender': '男'},
{'_id': ObjectId('5ca7a4c4219efd687462f967'), 'id': 3.0, 'name': 'peter', 'age': 21.0},
{'_id': ObjectId('5ca7a4c4219efd687462f968'), 'id': 4.0, 'name': 'xiaogang', 'age': 34.0, 'hobby': ['篮球']},
{'_id': ObjectId('5ca7a4c4219efd687462f969'), 'id': 5.0, 'name': 'ben', 'age': 24.0},
{'_id': ObjectId('5ca7a505219efd687462f96a'), 'id': 6.0, 'name': 'Mary', 'age': 84.0, 'gender': '男'}
]
find_one()方法:
import pymongo # 生成pymongo对象,传入连接服务器相关参数 ip 端口
mongo_client = pymongo.MongoClient(
host='192.168.0.112',
port=27017,
username="admin",
password=""
) # 选择连接的数据库
mongo_db = mongo_client["db1"]
# 查询
res = mongo_db.user.find_one()
print(res)
和findOne效果一样,返回第一条数据
{'_id': ObjectId('5ca7a4b0219efd687462f965'), 'id': 1.0, 'name': 'jack', 'age': 73.0}
是一个字典可以取
import pymongo # 生成pymongo对象,传入连接服务器相关参数 ip 端口
mongo_client = pymongo.MongoClient(
host='192.168.0.112',
port=27017,
username="admin",
password=""
) # 选择连接的数据库
mongo_db = mongo_client["db1"]
# 查询
res = mongo_db.user.find_one()
print(res.get("_id")) # 5ca7a4b0219efd687462f965
循环对象,循环比加list好,因为res是生成器,效率高
import pymongo mongo_client = pymongo.MongoClient(
host='192.168.0.112',
port=27017,
username="admin",
password=""
) mongo_db = mongo_client["db1"]
# 查询
res = mongo_db.user.find()
print(res) for i in res:
print(i)
是一个生成器,
<pymongo.cursor.Cursor object at 0x0000000002EC2DA0>
{'_id': ObjectId('5ca7a4b0219efd687462f965'), 'id': 1.0, 'name': 'jack', 'age': 73.0}
{'_id': ObjectId('5ca7a4b7219efd687462f966'), 'id': 2.0, 'name': 'mike', 'age': 84.0, 'gender': '男'}
{'_id': ObjectId('5ca7a4c4219efd687462f967'), 'id': 3.0, 'name': 'peter', 'age': 21.0}
{'_id': ObjectId('5ca7a4c4219efd687462f968'), 'id': 4.0, 'name': 'xiaogang', 'age': 34.0, 'hobby': ['篮球']}
{'_id': ObjectId('5ca7a4c4219efd687462f969'), 'id': 5.0, 'name': 'ben', 'age': 24.0}
{'_id': ObjectId('5ca7a505219efd687462f96a'), 'id': 6.0, 'name': 'Mary', 'age': 84.0, 'gender': '男'}
条件查询
import pymongo mongo_client = pymongo.MongoClient(
host='192.168.0.112',
port=27017,
username="admin",
password=""
) mongo_db = mongo_client["db1"]
# 条件查询
res = mongo_db.user.find_one({"age":34})
print(res) # {'_id': ObjectId('5ca7a4c4219efd687462f968'), 'id': 4.0, 'name': 'xiaogang', 'age': 34.0, 'hobby': ['篮球']}
MongoDB pymongo模块 查询的更多相关文章
- MongoDB pymongo模块
安装pymongo模块 pip install pymongo 连接mongodb代码,生成pymongo对象,传入连接服务器相关参数 ip 端口 如果使用指定的账户登录,设置要登录的账户和密码,然后 ...
- Python操作MongoDB(PyMongo模块的使用)
#!/usr/bin/env python #coding:utf-8 # Author: --<qingfengkuyu> # Purpose: MongoDB的使用 # Creat ...
- MongoDB pymongo模块 删除数据
使用user集合,删除user集合的数据 import pymongo mongo_client = pymongo.MongoClient( host='192.168.0.112', port=2 ...
- MongoDB pymongo模块 插入数据
insert_one(): 对一张不存在表插入数据,他会在插入数据同时自动生成数据表, 例如我要对chat集合插入数据,插入一个空数据 import pymongo mongo_client = py ...
- MongoDB pymongo模块 更新数据
现在chat集合里有3条数据 import pymongo mongo_client = pymongo.MongoClient( host='192.168.0.112', port=27017, ...
- pymongo模块 目录
MongoDB pymongo模块 MongoDB pymongo模块 查询 MongoDB pymongo模块 插入数据 MongoDB pymongo模块 更新数据 MongoDB pymongo ...
- Python全栈 MongoDB 数据库(聚合、二进制、GridFS、pymongo模块)
断网了2天 今天补上 聚合操作: 对文档的信息进行整理统计的操作 返回:统计后的文档集合 db.collection.aggregate() 功能:聚合函数,完成聚合操作 参数:聚合条件,配 ...
- .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 写入和查询)--学习笔记
2.5.3 MongoDB -- 写入和查询 写入 查询 查找操作符 逻辑操作符 其他 嵌套对象 数组 游标方法 写入 https://docs.mongodb.com/manual/tutorial ...
- python操作mongodb根据_id查询数据的实现方法
python操作mongodb根据_id查询数据的实现方法 python操作mongodb根据_id查询数据的实现方法,实例分析了Python根据pymongo不同版本操作ObjectId的技巧, ...
随机推荐
- 负载均衡集群介绍 LVS介绍 LVS调度算法 LVS NAT模式搭建
LVS BAT模式搭建 更改主机名: hostnamectl set-hostname centos7-three bash 准备工作 • 三台机器 • 分发器,也叫调度器(简写为dir) • 内网: ...
- 集群介绍 keepalived介绍 用keepalived配置高可用集群
集群介绍 • 根据功能划分为两大类:高可用和负载均衡 • 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务 • 实现高可用的开源软件有:heartb ...
- jenkins 启动slave时,找不到合适的java程序
今天添加slave 又不成功,我用右键,发现随意点了java的那个打开,结果刚弹出来就关闭了窗口,显示未启动成功. 真是小白的想法,不过跟工具打交道久了,多少逻辑上想一下不对. 一定是用了不合适的程序 ...
- HTML jQuery实现的expend row
问 题:今天接到个任务,在一个老的系统页面里实现可展开的表格行. 寻找: 1.首先想到了在easyUI里见过的expand row form: 2.但是我们的老系统管理只有jQuery,如果使用eas ...
- springmvc上传,下载
参考: 上传: 如下代码,可将上传内容复制到上传地址 file.transferTo(new File(realPath + File.separator + realName)); http://b ...
- .net core 开发接口前端调用时提示错误 405
解决方法: 在StartUp.cs文件中Configure(IApplicationBuilder app, IHostingEnvironment env)方法中添加如下代码: //跨域 app.U ...
- WampServer自己DIY添加apache、php、mysql版本
下载自己需要的apache版本. 下载地址: http://httpd.apache.org/download.cgi http://www.apachelounge.com/download/ 解压 ...
- iOS手机淘宝加入购物车动画分析
本文转载至 http://www.jianshu.com/p/e77e3ce8ee24 1.最终效果 仿淘宝动画 2.核心代码 _cartAnimView=[[UIImageView alloc] i ...
- invalid bound statement (not found)解决办法
最近搭建一个web项目后端SSM框架练手,使用Maven管理,遇到一个深坑invalid bound statement (not found),就是mapper文件扫描不到!!! 先上整合过程,解决 ...
- hosts文件配置不生效的解决办法
分析可能的原因并给出相应的解决方案. 第一 种情况,在开启浏览器的时候修改磁盘上的hosts文件,比如说加了原先没有的一句"127.0.0.1 www.360.cn",保存host ...