[模块记录]pymongo使用函数相关

2 篇文章 1 订阅
1 篇文章 0 订阅

0. 何为pymongo

pymongo是操作MongoDB的python模块

1、安装pymongo

# easy_install pymongo

2、连接mongodb

>>> import pymongo
>>> conn = pymongo.MongoClient(self, host=None, port=None, document_class=<class 'dict'>, tz_aware=None, connect=None, **kwargs)
    #返回一个 MongoClient 对象

3、获取数据库列表

>>> conn.database_names()
[u'test1', u'test2', u'admin', u'local']

4、连接数据库

>>> db1 = conn.get_database("db_name")
>>> db2 = conn["db_name"]
    #返回一个数据库对象

5、权限验证

>>> db.authenticate('username', 'password')
True

6、获取聚集列表 (聚集的概念类似于关系型数据库中的表)

>>> db.collection_names()
[u'account', u'role', u'item', u'online']

7、连接聚集

>>> account = db.get_collection("col_name")
   #返回一个聚集对象

8、查看聚集的一条记录

>>> account.find_one()

9、查看聚集的所有key (类似于关系型数据库中的字段)

>>> account.find_one().keys()

10、查看聚集的所有记录

>>> for i in account.find():
... print i

11、查看记录总数

>>> account.find().count()

12、根据条件查询多条记录

>>> for i in account.find({"name": "xxx"}):
... print i

13、对查询结果进行排序 (默认升序ASCENDING)

>>> account.find().sort("name", pymongo.ASCENDING)
>>> account.find().sort([("name", pymongo.ASCENDING), ("active_time", pymongo.DESCENDING)])

14、新增记录

>>> account.insert({"name": "mike", "active_time": "20130408"})

15、更新记录

>>> account.update({"name": "mike"}, {"$set": {"active_time": "20130408120000"}})
#注:如果数据中没有键-值"name": "mike", 会新增"active_time": "20130408120000"

16、删除记录 (不带条件表示全部删除)

>>> account.remove({"name": "mike"})

17. pycharm模糊不清匹配查询

方法1.
import re
{'xxx':re.compile('xxx')}

方法2. 
{'xxx':{'$regex':'xxx'}

18.and / or

account.find({ $or: [ { title: {$regex: 'test'} }, { intro: {$regex: 'test'} } ] })

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值