python 模塊 - pymongo模塊

 mongoDB 數據庫:數據庫

 

pymongo 操做:spa

import pymongo
# 鏈接mongo數據庫
client = pymongo.MongoClient(host='localhost', port=27017)

# 獲取應數據庫
db=client.text

# 獲取數據表
my_collection=db.col

#添加數據操做:(單條數據爲 字典格式,多少條數據爲 列表(字典)方式)
    # my_collection.insert(info)
    # 官方建議使用如下查詢:
    # my_collection.insert_one(info)
    # my_collection.insert_many(info)

# 查找數據:
    # 大致跟直接在mongoDB查詢一致:

    #比較符 :
    # $lt小於{'age': {'$lt': 20}}
    # $gt大於{'age': {'$gt': 20}}
    # $lte小於等於{'age': {'$lte': 20}}
    # $gte大於等於{'age': {'$gte': 20}}
    # $ne不等於{'age': {'$ne': 20}}
    # $in在範圍內{'age': {'$in': [20, 23]}}
    # $nin不在範圍內{'age': {'$nin': [20, 23]}}

    # 其餘方式查詢:
    # 符號含義示例示例含義
    # $regex匹配正則{'name': {'$regex': '^M.*'}}name以M開頭
    # $exists屬性是否存在{'name': {'$exists': True}}name屬性存在
    # $type類型判斷{'age': {'$type': 'int'}}age的類型爲int
    # $mod數字模操做{'age': {'$mod': [5, 0]}}年齡模5餘0
    # $text文本查詢{'$text': {'$search': 'Mike'}}text類型的屬性中包含Mike字符串
    # $where高級條件查詢{'$where': 'obj.fans_count == obj.follows_count'}自身粉絲數等於關注數

    # 查找全部數據:
    # date = my_collection.find()

    # 按條件查找數據:(依據mongoDB 查詢數據同樣,只是關鍵詞須要引號包住)
    # date = my_collection.find({'sex':"男",'count':{'$gt':60}})

    # 顯示前20條數據
    # date = my_collection.find().limit(20)
    # 跳過前2條顯示20條數據
    # date = my_collection.find().limit(20).skip(2)

    # 計數
    # 要統計查詢結果有多少條數據,能夠調用count()方法,如統計全部數據條數:

    # 排序
    # 能夠調用sort()方法,傳入排序的字段及升降序標誌便可,示例以下:

    # 咱們也能夠直接根據ObjectId來查詢,這裏須要使用bson庫裏面的ObjectId。
    # from bson.objectid import ObjectId
    # result = collection.find_one({'_id': ObjectId('593278c115c2602667ec6bae')})
    # print(result)
    # 其查詢結果依然是字典類型,運行結果:
    # {' ObjectId('593278c115c2602667ec6bae'), 'id': '20170101', 'name': 'Jordan', 'age': 20, 'gender': 'male'}
    # 固然若是查詢_id':結果不存在則會返回None。

    # 更多查詢方法,詳見mongoDB CURD吧。

# 更新數據:
    # my_collection.update({條件名key:條件值},{修改的key:修改的值,})
    # 官方建議使用如下查詢:
    # my_collection.update_one({'ID':3533821323},{"$set":{'name':'i123456',"count":22}})
    # my_collection.update_many()

# 刪除數據:
    # my_collection.remove({'ID':3533821323})
    # # 官方建議使用如下查詢:
    # my_collection.delete_one()
    # my_collection.delete_many()

# 須要知道的,查找到的mongo數據類型爲<class 'pymongo.cursor.Cursor'>
    # info = db.a1.find({"name":"a2"}).limit(10)
    # print(type(info))
    #輸出結果爲: <class 'pymongo.cursor.Cursor'>

    # 能夠經過list方式,將cursor類型數據轉爲列表數據:
    # info = list(db.a1.find({"name":"a2"}).limit(10))
    # print(type(info))
    # 輸出結果爲: list()
相關文章
相關標籤/搜索