向集合添加文檔
語法:
db.集合名稱.insert({})
或
db.集合名稱.save({})
save於insert不同之處爲:
- 使用insert如果插入的文檔中_id已經存在,則不能插入
- save方法如果插入的文檔中_id已經存在,則執行更新。
示例:
刪除集合中的文檔
語法: db.collection.remove(查詢表達式, 選項);
不加刪除條件爲刪除集合中的所有文檔,例如,db.hc.remove()爲刪除hc集合中的所有文檔,db.hc.remove({name: “lisi”})爲刪除hc集合中name爲lisi的文檔
選項是指 {justOne:true/false},是否只刪一行, 默認爲false
示例:
修改操作
基本
db.collection.update(criteria,objNew,upsert,multi)
參數說明:
- criteria:用於設置查詢條件
- objNew:用於設置更新內容
- upsert:如果記錄已經存在,更新它,否則新增一個記錄,取值爲0(不做任何操作)或1(新增一條)
- multi:如果有多個符合條件的記錄,是否全部更新,取值爲0(只會更新第一個符合條件的記錄)或1(會修改所有滿足條件的記錄)
注意:一般情況下後兩個參數分別爲0,1 ,即:db.collection.update(criteria,objNew,0,1)
示例:
注意:新文檔直接替換了舊文檔,而不是修改
示例:
示例:
$set
用來指定一個鍵的值,如果這個鍵不存在,則創建它。
示例:用$set關鍵字修改文檔的某列
upsert
upsert—是指沒有匹配的行,則直接插入該行。
示例:
multi
multi: 是指修改多行(即使查詢表達式匹配了多行,默認也只改1行,如果想改多行,可以用此選項)
示例:
$unset
用來刪除某個鍵
示例:
$inc
用來將某個鍵值加減指定的數值
示例: