沒有看清楚的不要抱怨,自己去翻看文檔,不要一味“拿來主義”
單鍵索引的值為一個單一的值,多鍵索引的值有多個數(shù)據(jù)(如數(shù)組)
如果mongoDB中插入數(shù)組類型的多鍵數(shù)據(jù),索引是自動建立的,無需刻意指定
單鍵索引的值為一個單一的值,多鍵索引的值有多個數(shù)據(jù)(如數(shù)組)
如果mongoDB中插入數(shù)組類型的多鍵數(shù)據(jù),索引是自動建立的,無需刻意指定
2017-07-12
注意:從 mongoDB 3.0 開始,ensureIndex 被廢棄,今后都僅僅是 createIndex 的一個別名。
注意:從 mongoDB 3.0 開始,ensureIndex 被廢棄,今后都僅僅是 createIndex 的一個別名。
注意:從 mongoDB 3.0 開始,ensureIndex 被廢棄,今后都僅僅是 createIndex 的一個別名。
注意:從 mongoDB 3.0 開始,ensureIndex 被廢棄,今后都僅僅是 createIndex 的一個別名。
注意:從 mongoDB 3.0 開始,ensureIndex 被廢棄,今后都僅僅是 createIndex 的一個別名。
2017-07-12
MongoDB使用 ensureIndex() 方法來創(chuàng)建索引
key 為你要創(chuàng)建的索引字段,1為按升序創(chuàng)建索引,-1為按降序創(chuàng)建索引。
也可以設(shè)置使用多個字段創(chuàng)建索引(關(guān)系型數(shù)據(jù)庫中稱作復(fù)合索引)
db.col_name.ensureIndex({key:1})
key 為你要創(chuàng)建的索引字段,1為按升序創(chuàng)建索引,-1為按降序創(chuàng)建索引。
也可以設(shè)置使用多個字段創(chuàng)建索引(關(guān)系型數(shù)據(jù)庫中稱作復(fù)合索引)
db.col_name.ensureIndex({key:1})
2017-07-12
刪除集合中所有文檔:
db.col.remove({})
移除 col_1 集合中 title 為 MongoDB save 的文檔,只刪除第一條找到的記錄:
db.col_1.remove({'title':'MongoDB save'}, 1)
db.col.remove({})
移除 col_1 集合中 title 為 MongoDB save 的文檔,只刪除第一條找到的記錄:
db.col_1.remove({'title':'MongoDB save'}, 1)
2017-07-10
db.col_name.update(
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
<query>,
<update>,
{
upsert: <boolean>,
multi: <boolean>,
writeConcern: <document>
}
)
2017-07-10
MongoDB 使用 update() 和 save() 方法來更新集合中的文檔。
update() 方法用于更新已存在的文檔。
save() 方法通過傳入的文檔來替換已有文檔。
強(qiáng)烈建議大家先看一看文檔,如:http://www.runoob.com/mongodb/mongodb-tutorial.html
update() 方法用于更新已存在的文檔。
save() 方法通過傳入的文檔來替換已有文檔。
強(qiáng)烈建議大家先看一看文檔,如:http://www.runoob.com/mongodb/mongodb-tutorial.html
2017-07-10
find() 方法,它返回集合中所有文檔。
findOne() 方法,它只返回一個文檔。
格式化輸出:`db.col_name.find().pretty()`
查看集合中文檔的個數(shù):`db.col_name.find().count()`
跳過輸出文檔數(shù):`db.col_name.find().skip()`
限制輸出文檔數(shù):`db.col_name.find().limit()`
排序:`db.col_name.find().sort()`
findOne() 方法,它只返回一個文檔。
格式化輸出:`db.col_name.find().pretty()`
查看集合中文檔的個數(shù):`db.col_name.find().count()`
跳過輸出文檔數(shù):`db.col_name.find().skip()`
限制輸出文檔數(shù):`db.col_name.find().limit()`
排序:`db.col_name.find().sort()`
2017-07-10
v表示version,在Mongo3.2之前的版本中,會存在{v:0}(版本鎖為0)的情況。在3.2之后的版本中,{v:0}不再允許使用,詳見官方文檔version 0 indexes。
(然而這部分闊以不去關(guān)注,因?yàn)関由系統(tǒng)自動管理)
key表示作為索引的鍵。1或-1表示排序模式,1為升序,1為降序
name表示索引的名字,默認(rèn)生成名稱的規(guī)則是作為索引的字段_排序模式。所以"key": {"ID": 1}會產(chǎn)生名稱"name": "ID_1"。
ns表示name space命名空間,由數(shù)據(jù)庫名稱.集合名稱組成。
(然而這部分闊以不去關(guān)注,因?yàn)関由系統(tǒng)自動管理)
key表示作為索引的鍵。1或-1表示排序模式,1為升序,1為降序
name表示索引的名字,默認(rèn)生成名稱的規(guī)則是作為索引的字段_排序模式。所以"key": {"ID": 1}會產(chǎn)生名稱"name": "ID_1"。
ns表示name space命名空間,由數(shù)據(jù)庫名稱.集合名稱組成。
2017-07-10
## 重要概念
### 1. database 數(shù)據(jù)庫
多個集合邏輯上組織在一起,就是數(shù)據(jù)庫。
### 2. collection 集合
多個文檔組成一個集合,相當(dāng)于關(guān)系數(shù)據(jù)庫的表。
### 4. document 文檔
MongoDB 將數(shù)據(jù)存儲為一個文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值對組成。MongoDB 文檔類似于 JSON 對象。字段值可以包含其他文檔,數(shù)組及文檔數(shù)組。
### 1. database 數(shù)據(jù)庫
多個集合邏輯上組織在一起,就是數(shù)據(jù)庫。
### 2. collection 集合
多個文檔組成一個集合,相當(dāng)于關(guān)系數(shù)據(jù)庫的表。
### 4. document 文檔
MongoDB 將數(shù)據(jù)存儲為一個文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值對組成。MongoDB 文檔類似于 JSON 對象。字段值可以包含其他文檔,數(shù)組及文檔數(shù)組。
2017-07-10
是講錯了嗎?按照db.collections.insert({x:[1,2,3]})
1.getIndexes()并未返回,必然是沒有新建索引;
2.官方文檔說:當(dāng)索引的字段是數(shù)組時候,才會"自動的給數(shù)組內(nèi)字段的每一個元素"設(shè)置索引,這才是多key索引,自動指的是給數(shù)組內(nèi)部的元素自動設(shè)置;
3.方法:db.collections.createIndex({x:1});必須要給數(shù)組設(shè)置索引,才是多key索引。
老師漏了文檔上的好多,建議看直接看中文文檔。
1.getIndexes()并未返回,必然是沒有新建索引;
2.官方文檔說:當(dāng)索引的字段是數(shù)組時候,才會"自動的給數(shù)組內(nèi)字段的每一個元素"設(shè)置索引,這才是多key索引,自動指的是給數(shù)組內(nèi)部的元素自動設(shè)置;
3.方法:db.collections.createIndex({x:1});必須要給數(shù)組設(shè)置索引,才是多key索引。
老師漏了文檔上的好多,建議看直接看中文文檔。
2017-07-05
這有中文社區(qū)的手冊,看一遍就會了:http://docs.mongoing.com/manual-zh/core/index-single.html
2017-07-05