PyMongo是什么

 PyMongo是驱动程序,使python程序能够使用Mongodb数据库,使用python编写而成.

安装

 环境:Ubuntu 14.04+python2.7+MongoDB 2.4
    先去官网下载软件包,地址点击打开链接.解压缩后进入,使用python setup.py install 进行安装
    或者用pip安装pip -m install pymongo

基本使用

 创建连接

  1. import pymongo
  2. client = pymongo.MongoClient('localhost', 27017)

 或者可以这样

  1. import pymongo
  2. client = MongoClient('mongodb://localhost:27017/')

连接数据库

  1. db = client.mydb

 

或者
  1. db = client['mydb']

连接聚集

 聚集相当于关系型数据库中的表
  1. collection = db.my_collection

 或者

 
  1. collection = db['my_collection']

查看数据库下所有聚集名称

  1. db.collection_names()

插入记录

  1. collection.insert({"key1":"value1","key2","value2"})

删除记录

 全部删除

  1. collection.remove()

    按条件删除

  1. collection.remove({"key1":"value1"})

 更新记录

  1. collection.update({"key1": "value1"}, {"$set": {"key2": "value2", "key3": "value3"}})

 查询记录

 查询一条记录:find_one()不带任何参数返回第一条记录.带参数则按条件查找返回
  1. collection.find_one()
  2. collection.find_one({"key1":"value1"})

 查询多条记录:find()不带参数返回所有记录,带参数按条件查找返回

  1. collection.find()
  1. collection.find({"key1":"value1"})

查看聚集的多条记录 

  1. for item in collection.find():
  2. print item

 查看聚集记录的总数

  1. print collection.find().count()

 查询结果排序

 单列上排序 
  1. collection.find().sort("key1") # 默认为升序
  2. collection.find().sort("key1", pymongo.ASCENDING) # 升序
  3. collection.find().sort("key1", pymongo.DESCENDING) # 降序
 多列上排序

  1. collection.find().sort([("key1", pymongo.ASCENDING), ("key2", pymongo.DESCENDING)])

MongoDB之pymongo的更多相关文章

  1. MongoDB和pymongo的CURD

    一.mongodb 1.介绍 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之 ...

  2. SQL-如何使用 MongoDB和PyMongo。

    先决条件 在开始之前,请确保已经安装了 PyMongo 发行版. 在 Python shell 中,下面的代码应该在不引发异常的情况下运行: >>> import pymongo 假 ...

  3. Windows平台下为Python添加MongoDB支持PyMongo

    到Python官网下载pymongo-2.6.3.win-amd64-py2.7.exe 安装pymongo-2.6.3.win-amd64-py2.7.exe 参照官方的用例进行测试 打开命令提示符 ...

  4. MongoDB、PyMongo数据操作

    MongoDB 命令 C:\Program Files\MongoDB\Server\4.0\bin mongo 客户端 mongod 服务端 mongoexport 导出 普通格式,每条记录一行,整 ...

  5. MongoDB和pymongo自用手册

    [*] 本文出处:http://b1u3buf4.xyz/ [*] 本文作者:B1u3Buf4 [*] 本文授权:禁止转载 从自己的另一处博客移动过来.长期维护,不定期添加新内容. 前述和安装 mon ...

  6. CentOS平台下为Python添加MongoDB支持PyMongo

    下载PyMongo [root@leezhen ~]# wget https://pypi.python.org/packages/source/p/pymongo/pymongo-2.6.3.tar ...

  7. mongodb 安装pymongo 驱动

    下载驱动包: https://pypi.org/project/pymongo/ 解压:  tar zxvf pymongo-3.8.0.tar.gz   安装:  python setup.py i ...

  8. pymongo连接MongoDB

    导语 pymongo 是目前用的相对普遍一个python用来连接MongoDB的库,是工作中各种基本需求都能满足具体api可以参考 pymongo APIpymongo github 安装 Mongo ...

  9. Python 驱动 MongoDB 示例(PyMongo)

    Python 的MongoDB驱动 pymongo ,使用pip Install pymongo安装即可 最近发现网上的很多实例已经过时了,在此自我探究记录下来. 编写一个接口类来支持MongoDB的 ...

随机推荐

  1. ElasticSearch 2 (19) - 语言处理系列之故事开始

    ElasticSearch 2 (19) - 语言处理系列之故事开始 摘要 全文搜索是精度(尽可能少的返回不相关文档)和召回(尽可能多的返回相关文档)的战场.尽管只精确匹配用户查询的词肯定会是精确的, ...

  2. Activiti源码学习:ExecutionListener与TaskListener的区别

    /** Callback interface to be notified of execution events like starting a process instance, * ending ...

  3. JMeter学习笔记——认识JMeter(1)

    拿到一个自动化测试工具,我们第一步就应该了解它能提供我们哪方面的功能(最直接的方法就是从官网获取),接下来就是简单的对这个工具进行“功能测试”了,当然这里的功能测试不是让你找它存在的bug,而是让自己 ...

  4. Serial,Parallel,CMS,G1四大GC收集器特点小结

    1.Serial收集器一个单线程的收集器,在进行垃圾收集时候,必须暂停其他所有的工作线程直到它收集结束.特点:CPU利用率最高,停顿时间即用户等待时间比较长.适用场景:小型应用通过JVM参数-XX:+ ...

  5. LVS(Linus Virtual Server):三种负载均衡方式比较+另三种负载均衡方式

    还有个姊妹篇也可以参考这个文章:六大Web负载均衡原理与实现 什么是LVS (Linux Virtual Server)?   首先简单介绍一下LVS (Linux Virtual Server)到底 ...

  6. P3000 [USACO10DEC]牛的健美操Cow Calisthenics

    题目描述 Farmer John continues his never-ending quest to keep the cows fit by having them exercise on va ...

  7. Django 高并发负载均衡

    1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...

  8. POJ 1062 昂贵的聘礼(最短路中等题)

    昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 51879   Accepted: 15584 Descripti ...

  9. in packet sniffer

    in packet sniffer 来源 https://kb.fortinet.com/kb/microsites/search.do?cmd=displayKC&docType=kc&am ...

  10. POJ2125 Destroying The Graph

    题目链接:ヾ(≧∇≦*)ゝ 大致题意: 给出一个有向图D=(V,E).对于每个点U,定义两种操作a(u),b(u) 操作a(u):删除点U的所有出边,即属于E,操作花费为Ca(u). 操作b(u):删 ...