详解Pymongo常用查询方法总结


Posted in Python onJanuary 29, 2021

Python 直接连接mongodb数据库进行查询操作

1、安装所需模块

使用到的是pymongo模块,安装方法:pip install pymongo

2、环境验证

详解Pymongo常用查询方法总结

3、连接数据库

import pymongo
def operating_mongodb():
  client = pymongo.MongoClient('ip_address', port)
  db_auth = client.database
  db_auth.authenticate("username", "password")
  db = client.db_name
  return db

4、连接到对应的数据库表

mongodb = operating_mongodb()
search_set = mongodb.table_name

5、按照所需字段排序

search_set.find().sort("field_name ",pymongo.ASCENDING)   --升序
search_set.find().sort("field_name ",pymongo.DESCENDING)  --降序

6、查询数据库表的全部内容

第一种:search_set.find({})

第二种:search_set.find()

7、精确查询

search_set.find({“field_name”:”value”})
search_set.find({“field_name”:”value”, “field_name”:”value”})

8、只返回所需要的字段信息

find的第二参数可以帮助我们只把需要的键值信息返回,需要将我们需要的键指定为1,

另外默认的”_id”默认是返回的,我们不需要它返回的话将它的值设为0

search_set.find({}, {“field_name_one”:1, “field_name_two”:1,”_id”:0})

9、比较查询

首先 $lt和<,$lte和<=,$gt和>,gte和>=,ne和!=是一一对应的

search_set.find({"field_name": {"$lt": value, "$gt": value}})

10、关联查询

如果只想查询一个键的多个值,或取除某个值之外所有的数据那么就用到了

$in和$nin

比如我只想获取field_name为1,5,8的数据:

search_set.find({"field_name": {"$in": [1,5,8]}})

如果想获取field_name为5之外的所有数据:

search_set.find({"field_name": {"$nin": [5]}})

11、多条件模糊查询

$regex为模糊查询的字符串提供正则表达式功能

search_set.find({"$or": [{"field_name": {'$regex': value}},{"field_name": {'$regex': value}}]})

通过这些常用的查询方法,灵活组合,基本可以满足常见的查询需求

到此这篇关于详解Pymongo常用查询方法总结的文章就介绍到这了,更多相关Pymongo 查询内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python最基本的数据类型以及对元组的介绍
Apr 14 Python
用tensorflow实现弹性网络回归算法
Jan 09 Python
django的登录注册系统的示例代码
May 14 Python
python判断输入日期为第几天的实例
Nov 13 Python
Python实现网站表单提交和模板
Jan 15 Python
Pythony运维入门之Socket网络编程详解
Apr 15 Python
Python中的 is 和 == 以及字符串驻留机制详解
Jun 28 Python
解决Django加载静态资源失败的问题
Jul 28 Python
python3 pillow模块实现简单验证码
Oct 31 Python
python数据库编程 ODBC方式实现通讯录
Mar 27 Python
Python私有属性私有方法应用实例解析
Sep 15 Python
python的列表生成式,生成器和generator对象你了解吗
Mar 16 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 #Python
Python爬取梨视频的示例
Jan 29 #Python
使用Python封装excel操作指南
Jan 29 #Python
用OpenCV进行年龄和性别检测的实现示例
Jan 29 #Python
python使用numpy中的size()函数实例用法详解
Jan 29 #Python
Python机器学习工具scikit-learn的使用笔记
Jan 28 #Python
K近邻法(KNN)相关知识总结以及如何用python实现
Jan 28 #Python
You might like
比较全的PHP 会话(session 时间设定)使用入门代码
2008/06/05 PHP
PHP 中执行排序与 MySQL 中排序
2009/04/21 PHP
php 自写函数代码 获取关键字 去超链接
2010/02/08 PHP
zend api扩展的php对象的autoload工具
2011/04/18 PHP
php小型企业库存管理系统的设计与实现代码
2011/05/16 PHP
PHP检查端口是否可以被绑定的方法示例
2018/08/09 PHP
为Yahoo! UI Extensions Grid增加内置的可编辑器
2007/03/10 Javascript
javascript jQuery插件练习
2008/12/24 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
js实现模拟计算器退格键删除文字效果的方法
2015/05/07 Javascript
Javascript实现计算个人所得税
2015/05/10 Javascript
基于Jquery插件实现跨域异步上传文件功能
2016/04/26 Javascript
JS继承之借用构造函数继承和组合继承
2016/09/07 Javascript
Bootstrap模态框水平垂直居中与增加拖拽功能
2016/11/09 Javascript
Jquery Easyui进度条组件Progress使用详解(8)
2020/03/26 Javascript
React中上传图片到七牛的示例代码
2017/10/10 Javascript
稍微学一下Vue的数据响应式(Vue2及Vue3区别)
2019/11/21 Javascript
小程序websocket心跳库(websocket-heartbeat-miniprogram)
2020/02/23 Javascript
简单文件操作python 修改文件指定行的方法
2013/05/15 Python
独特的python循环语句
2016/11/20 Python
Python django实现简单的邮件系统发送邮件功能
2017/07/14 Python
Tensorflow卷积神经网络实例进阶
2018/05/24 Python
Python 线程池用法简单示例
2019/10/02 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
Python中itertools的用法详解
2020/02/07 Python
基于spring boot 日志(logback)报错的解决方式
2020/02/20 Python
基于python图像处理API的使用示例
2020/04/03 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
双创工作实施方案
2014/03/26 职场文书
个人遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
司法局2014法制宣传日活动总结
2014/11/01 职场文书
2014年安全生产工作总结
2014/11/13 职场文书
售票员岗位职责
2015/02/15 职场文书
新闻稿件写作范文
2015/07/18 职场文书
Android开发实现极为简单的QQ登录页面
2022/04/24 Java/Android