庫操做
show dbs 查看系統中的數據庫列表
注:數據庫中必須有內容纔會顯示數據庫
db = db.getSiblingDB("<數據庫名>")
or
use <數據庫名>
切換當前數據庫
注:若是數據庫不存在,則建立數據庫
任何一種方法都是能夠的,並把db值設置爲指定的數據庫,而後可使用db來管理新的當前數據庫。數組
db.dropDatabase() 刪除當前數據庫
注:刪除當前數據庫,而後在不改變當前數據庫的狀況下使用句柄建立一個集合,則被刪的數據庫會被從新建立。服務器
db.copyDatabase("<當前數據庫名>", "<備份庫名>", [hostname])
複製數據庫,建立除名稱外如出一轍的數據庫
注:可選的hostname參數指定當前庫MongDB服務器主機名。app
db 顯示當前數據庫 函數
集合操做
show collections 查看當前數據庫中包含的集合的名單spa
db.createCollection("<集合名>", {<options>}) 建立集合
注:參數二可選對象
屬性 說明
capped 布爾,若是爲true,表示該集合是一個封頂集合,它不會增加到比size屬性指定最大規模更大。默認:false
autoIndexID 布爾,若是爲true,代表自動爲添加到集合的每一個文檔建立一個_id字段並實現該字段上索引。這對封頂集合應該是false。默認true
size 字節單位大小,用於封頂集合。最舊的文件被刪除,以騰出空間給新文件
max 在封頂集合中容許的最大文檔數。最舊的文件被刪除,以騰出空間給新文件3d
db.<集合名>.drop()
or
coll = db.getCollection("<集合名>")
coll.drop() 刪除集合對象
db.<集合名>.find()
or
coll = db.getCollection("<集合名>")
coll.find(query) 在集合中查看文檔
注:可選query參數指定包含字段和值的查詢文檔與集合中的文檔匹配,並返回匹配內容。例:coll.find({speed:"120mph"})排序
db.<集合名>.insert({})
or
db.<集合名>.save({})
在集合中插入文檔數據(若是集合不存在會被建立,save也是)
將同類數據視爲一個集合
集合中數據具體類似的屬性
集合是一個容器,內部可放置N多數據
能夠對這些數據進行篩選、排序
db.<集合名>.remove({篩選條件},false)
從集合中刪除文檔 參數1:篩選條件。參數2:可選參數,是否單行刪除,默認false。遞歸
db.<集合名>.save({ "_id" : ObjectId("57e26b294a655f35e13d6f5d"), "name" : "hung", "age" : 18})
or
db.<集合名>.update( {篩選條件}, {$set:{"name":"jin","up":true}},
{upsert:true,multi:true}) 更新集合中的文檔
參數一:更新文檔的條件
參數二:更新時使用的更新運算符,以及更新屬性
經常使用運算符:$inc遞歸該字段值。$set設置字段值。$push將一個條目推送數組。$rename重命名字段。等··
參數三:可選,兩個屬性。multi(匹配到的全部文檔更新,默認false只更新第一條)和upsert(若沒有找到匹配項,建立一個,默認false不建立),布爾。
*******************************************************************
db.<集合名>.pretty() 整齊的顯示查詢文檔
db.<集合名>.find().sort({屬性:1/-1}) 按指定的屬性排序
1是正序,-1:倒序
db.<集合名>.find().limit(n) 顯示前n條數據
db.<集合名>.find().skip(n) 跳過前n條數據
條件查找
db.<集合名>.find({屬性:value}) 屬性==值
db.<集合名>.find({屬性:{運算符:value}})
運算符:
$lt 小於
$lte 小於等於
$gt 大於
$gte 大於等於
$ne 不等於
對同一屬性使用兩個運算符
db.<集合名>.find({ 屬性: { 運算符1:value, 運算符2:value } })
如:db.<集合名>.find({ age: { $gt: 6, $lt: 16 } })
對不一樣屬性同時限定條件(兩個條件同時成立)
db.<集合名>.find( {屬性1: { 運算符:value }, 屬性2: { 運算符:value }})
或條件
db.<集合名>.find({
$or: [
{屬性: value},
{屬性: value},
{屬性: value}
]
})
使用函數篩選數據db.<集合名>.find({ $where: function(){ return true/false }})