1. PyMongohtml
import pymongomongodb
1. 初始化 Mongo 客戶端數據庫
client=pymongo.MongoClient(mongodb://10.85.39.45:8188,10.85.39.43:8188,10.85.39.31:8188,10.85.39.32:8188,10.85.39.33:8188,10.85.39.34:8188,10.85.32.16:8188,10.85.32.33:8188,10.85.39.35:8188,10.85.39.27:8188)數組
2. 初始化數據庫
mongo_database = client[db_name]spa
3. 初始化表(彙集、集合)htm
stat_tbl = mongo_database[stat_tbl_name]對象
4. 在表中按照鍵值查找數據blog
start_time_doc = stat_tbl.find_one({'keyword': keyword_name})文檔
start_time_doc下可能還有二級鍵值,須要用start_time_doc['start_time']訪問get
5. 在表中更新數據
stat_tbl.update({'keyword': keyword_name}, {'$set': {'start_time': timestamp}})
6. 查看 mongodb 客戶端中數據庫和彙集的名字
client.database_names()
db.collection_names()
7. 查看彙集中一條記錄
db.Account.find_one({"UserName":"keyword"})
在這裏db.Account與db['Account']做用相同,都是表示數據庫中的一個彙集
8. 查看彙集的多條記錄
for item in db.Account.find():
item
9. 查詢語法詳解 db.collection.find(query, projection)
查詢條件由 query 參數傳入,爲字典類型。不一樣的查詢條件用 ',' 隔開表示查詢條件的 AND,查詢的字段和具體值用字典的 key/value 來表示。好比:
db.col.find({key1: value1, key2: value2}) 查詢彙集中 key1 爲 value1,同時 key2 爲 value2 兩個條件成立的記錄。
另外,使用操做符能夠指定查詢條件,格式爲:
{key1: {operator: value}})
這些操做符包括,詳細見:https://docs.mongodb.com/manual/reference/operator/query/
$eq:與某個值相等
$gt:大於某個值
$gte:大於等於某個值
$in:爲數組中的某個值
$lt:小於某個值
$lte:小於等於某個值
$ne:不等於某個值
$nin:不在數組的列表中
$and 和 $or 爲特殊的邏輯運算符其用法以下,條件寫在列表裏:
{$or: [{key1: value1, key2: value2}]}
舉例:table.find({"saveTime": {"$gte": 1501516800}, "bjh_ext.ext_info.feed_ext_info.source_id": {"$in": [3000084, 3000085, 3000086]}})
上述查詢語句用於在table裏查找"saveTime"值大於等於1501516800即某個時刻以後的,且bjh_ext.ext_info.feed_ext_info.source_id值在列表給出範圍內的記錄。'.' 運算符用於在嵌入式的文檔中查詢,表示多級鍵值。
參考:http://www.cnblogs.com/zhouxuchen/p/5544227.html
2. MongoDB
其餘:
1. 存在 MongoDB 中的數據會自動加上一個 '__id' 字段,值爲該條記錄的對象,在對數據進行解析時,須要先將該字段刪除。
2. 較大的數據類型會存爲 BSON.int64.int64 類型,爲數據庫獨有的類型,將讀出來的數據轉換爲其餘格式好比 marshal 時,須要先將這個字段的值轉換爲 int 類型。