MongoDB實現(xiàn)增刪改查
一、增加
insert向數(shù)據(jù)庫中插入集合
插入一條記錄,傳入集合
db..insert()
db.students.insert({name:"唐僧",age:60,gender:"M"})插入多條記錄,傳入數(shù)組
db.students.insert([{name:"豬八戒",age:53,gender:"M"},{name:"沙僧",age:50,gender:"M"}])默認生成時間戳id,確保數(shù)據(jù)唯一,原理是調(diào)用如下語句,可以自行指定id
默認:
ObjectId()
自行指定:
db.students.insert({_id:"001",name:"白骨精",age:60,gender:"W"})
insertOne向數(shù)據(jù)庫中插入集合
插入一個文檔對象,只能傳入一個文檔,不能傳入數(shù)組
db.students.insertOne({_id:"002",name:"鐵扇公主 ",age:60,gender:"W"})insertMany向數(shù)據(jù)庫中插入集合
插入多個文檔對象,只能傳入一個數(shù)組,即使只存在一個文檔,不能傳入文檔
db.students.insertMany([{_id:"004",name:"牛魔王",age:60,gender:"M"},{_id:"005",name:"紅孩兒",age:60,gender:"M"}])其實是對insert的拆分
二、查詢
查詢集合中所有符合條件的文檔
find進行查詢集合所有文檔
db.students.find();
db.students.find({});find進行條件查詢
{}:表示集合中所有文檔;
{屬性:值} 查詢屬性是指定值的文檔
db.students.find({_id:"002"});
db.students.find({_id:"002",name:"劉德華"});
db.students.find({_id:"002"}).count(); ----查看查詢的文檔的數(shù)量
db.students.find({_id:"002"}).length();find返回值為數(shù)組,可以通過下標獲取對應(yīng)值
findOne進行條件查詢
findOne返回的為Object,可以用返回值.對象
查詢集合中符合條件的第一個文檔,最多一條文檔
db.students.findOne({name:"AideHua"});三、修改
update(查詢條件,新對象)
db..update(查詢條件,新對象)
如:db.students.update({_id:"002"},{age:18}) 注意:將會用新對象{age:18}替換之前舊對象
修改前

修改后

update(查詢條件,{$set:修改文檔屬性})
db.students.update({_id:"004"},{$set:{age:180}})
修改操作符
set ------修改文檔指定屬性
unset------刪除文檔指定屬性(和值無關(guān))
默認只會修改一個
如果想要進行修改多個,指定可選參數(shù)multi
db.students.update({_id:"004"},{$set:{age:880}},{multi:true})updateMany()
同時修改多個符合條件的文檔
匹配多少個,就會修改多少個的值
db.students.updateMany({_id:"004"},{$set:{age:180}})updateOne()
修改一個符合條件的文檔
只會修改匹配的第一個
db.students.updateOne({_id:"004"},{$set:{age:180}})replaceOne()
替換文檔
四、刪除
remove()
刪除符合條件的而所有文檔,默認刪除所有,刪除單個需要指定可選參數(shù)justOne為:true
刪除多個,默認情況
db.students.remove({name:"Liming"})刪除單個
db.students.remove({name:"Liming"},true)必須指定參數(shù),否則報錯,注意和find()區(qū)別
db.students.remove();//報錯
刪除所有文檔,但是集合還是存在的
db.students.remove({});刪除集合,若是數(shù)據(jù)庫的最后一個人集合,那么數(shù)據(jù)庫也會被刪除
db.students.drop();
deleteOne()
刪除一個
db.students.deleteOne({name:"Liming"})deleteMany()
刪除多個
db.students.deleteMany({name:"Liming"})到此這篇關(guān)于MongoDB實現(xiàn)增刪改查的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- spring boot集成mongodb的增刪改查的示例代碼
- mongodb數(shù)據(jù)庫實驗之增刪查改
- Java springboot Mongodb增刪改查代碼實例
- express+mongoose實現(xiàn)對mongodb增刪改查操作詳解
- java連接Mongodb實現(xiàn)增刪改查
- MongoDB增刪查改操作示例【基于JavaScript Shell】
- MongoDB簡單操作示例【連接、增刪改查等】
- Node.js對MongoDB進行增刪改查操作的實例代碼
- nodejs操作mongodb的增刪改查功能實例
- Java操作Mongodb數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的增刪查改功能示例
- mongodb增刪改查詳解_動力節(jié)點Java學(xué)院整理
相關(guān)文章
Mongodb?刪除文檔Delete與Remove的區(qū)別解析
這篇文章主要介紹了Mongodb?刪除文檔Delete與Remove的區(qū)別,要從集合中刪除所有文檔,請將空過濾器文檔傳遞{}給該?db.collection.deleteMany()方法,本文通過示例代碼介紹的非常詳細,需要的朋友可以參考下2023-08-08
mongodb replica set 配置高性能多服務(wù)器詳解
mongodb的多服務(wù)器配置,以前寫過一篇文章,是master-slave模式的,master-slave模式,不能自動實現(xiàn)故障轉(zhuǎn)移和恢復(fù)。所以推薦大家使用mongodb的replica set,來實現(xiàn)多服務(wù)器的高性能。2014-07-07
分析MongoDB和MySQL各自的關(guān)鍵特性、差別和優(yōu)勢
MongoDB 和 MySQL 都是不錯的數(shù)據(jù)庫,都具有優(yōu)良的性能。然而,它們是否成功取決于應(yīng)用場景。首先應(yīng)當(dāng)了解它們各自不同的運行環(huán)境,而不能只比較各自的優(yōu)點和缺點。因此,在本文中,我們將探討 MongoDB 和 MySQL 各自的關(guān)鍵特性、差別和優(yōu)勢。2021-06-06
mongodb如何對文檔內(nèi)數(shù)組進行過濾的方法步驟
這篇文章主要介紹了mongodb如何對文檔內(nèi)數(shù)組進行過濾的方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10
2021最新版windows10系統(tǒng)MongoDB數(shù)據(jù)庫安裝及配置環(huán)境
這篇文章主要介紹了2021最新版MongoDB數(shù)據(jù)庫安裝及配置環(huán)境(windows10系統(tǒng)),本文通過圖文實例相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
window平臺安裝MongoDB數(shù)據(jù)庫圖文詳解
本篇文章主要介紹了window平臺安裝MongoDB數(shù)據(jù)庫圖文詳解,主要介紹window下面安裝mogod的步驟和使用細節(jié)。感興趣的小伙伴們可以參考一下。2016-11-11
對標mongodb存儲類JSON數(shù)據(jù)文檔統(tǒng)計分析詳解
這篇文章主要介紹了對標mongodb存儲類JSON數(shù)據(jù)文檔統(tǒng)計分析,只是介紹了簡單的查詢,其實針對各種統(tǒng)計分析場景,clickhouse提供了超級多的統(tǒng)計分析函數(shù)、窗口函數(shù)等等,當(dāng)然針對數(shù)組的數(shù)據(jù)類型也有很多的統(tǒng)計分析函數(shù),需要的朋友可以參考下2022-06-06
Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境詳解
這篇文章主要給大家介紹了在Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境的相關(guān)資料,文中介紹的非常詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。2017-04-04

