第五課 資料庫之MongoDB
來自專欄 3個月python學習筆記
MongoDB安裝
簡介
- MongoDB 是一個基於分散式 文件存儲的NoSQL資料庫
- 由C++語言編寫,運行穩定,性能高
- 旨在為 WEB 應用提供可擴展的高性能數據存儲解決方案
三元素:資料庫(excel),集合(表),文檔(對象)
資料庫切換
- 查看當前資料庫名稱 db
- 查看所有資料庫名稱 show dbs
- 切換資料庫 use 資料庫名稱
刪除當前指向的資料庫 db.dropDatabase()
集合
創建 db.createCollection(name, options)
查看集合 show collections/tables
刪除 db.集合名稱.drop()
數據類型
- 下表為MongoDB中常用的幾種數據類型:
- Object ID:文檔ID
- String:字元串,最常用,必須是有效的UTF-8
- Boolean:存儲一個布爾值,true或false
- Integer:整數可以是32位或64位,這取決於伺服器
- Double:存儲浮點值
- Arrays:數組或列表,多個值存儲到一個鍵
- Object:用於嵌入式的文檔,即一個值為一個文檔
- Null:存儲Null值
- Timestamp:時間戳
- Date:存儲當前日期或時間的UNIX時間格式
數據操作
插入 db.集合名稱.insert(document)
db.stu.insert({name:gj,gender:1})
簡單查詢
db.集合名稱.find()
更新
db.集合名稱.update( <query>, <update>, {multi: <boolean>})
保存
db.集合名稱.save(document)
數據查詢
基本查詢
- 方法find():查詢
db.集合名稱.find({條件文檔})
- 方法findOne():查詢,只返回第一個
db.集合名稱.findOne({條件文檔})
- 方法pretty():將結果格式化,很美觀
db.集合名稱.find({條件文檔}).pretty()
比較運算符
- 等於,默認是等於判斷,沒有運算符
- 小於$lt
- 小於或等於$lte
- 大於$gt
- 大於或等於$gte
- 不等於$ne
- 例1:查詢名稱等於gj的學生
db.stu.find({name:gj})
import pymongoclient=pymongo.MongoClient("localhost", 27017)db=client.teststu = db.stus1={name:gj,age:18}s1_id = stu.insert_one(s1).inserted_ids2=stu.find_one()for cur in stu.find(): print curcur=stu.find()cur.next()cur.next()print stu.count()
推薦閱讀:
※MySQL資料庫應用總結(九)—MySQL資料庫視圖的操作
※利用主鍵快速聚合單表數千萬MySQL的非索引欄位
※php+mysql開發的網站 如何使用hadoop+hbase+hive,能代替mysql么?
※將開源軟體(比如mysql)的源碼進行修改後必須也開源嗎?
※Mysql學習第三篇