程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MongoDB數據庫 >> MongoDB綜合知識 >> MongoDB 學習筆記

MongoDB 學習筆記

編輯:MongoDB綜合知識

1、配置:mongod --dbpath=D:\MongoDB\data

mongo

2、基本的增刪查改

find() update()-- 整體更新,局部更新。

修改器: $inc db.person.update({"age":23},{$inc:{"salary":1000}})

第一個參數為條件。第二個參數為修改的值,但值必須為整數。($inc allowed for numbers only)

$set 修改器: db.person.update({"name":"gll"},{$set:{"age":25}}}

還有一種操作為修改或添加操作:這裡可以叫insertOrUpdate操作。

只要將update的第三個參數設為true即可。如果沒有查到,就在數據庫裡新增一條,避免數據庫裡判斷是update還是add操作。使用簡單。

批量更新:

如果匹配多條的話, 默認的情況下只更新第一條。如果需要多條更新的話,在update的第四個參數中設為true即可。也很簡單。

Remove 操作。

3、高級操作

聚合:

count() distinct() 選擇了哪個屬性,哪個就不能重復。

group() 參數 key : 指定文檔分組的依據,所有的age鍵的值劃分到一組,true為返回鍵age的值。

initial: "initial":{"person":[]} 每一組reduce函數調用的初始個數,第一組的所有成員都會使用這個累加器。

說白了。這個就是個初始值。每次$reduce 都會調用這個值進行值的改變。

例子:

db.person.group({
. "key":{"age":true},
. "initial":{"person":[]},
. "$reduce":function(cur,prev){ 第一個參數為當前文檔,第二個參數為累加器文檔
. prev.person.push(cur.name);
.   }
. })
eg : db.person.group({
"key": {
"age": true
},
"initial": {
"person": [
]
},
"$reduce": function(doc,out){
out.person.push(doc.name);
},
"finalize": function(out){
out.count=out.person.length;
},
"condition": {
"age": {
$lt: 25
}
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved