摘要:命令檢查創(chuàng)建的集合命令從數(shù)據(jù)庫(kù)中刪除集合。命令從集合查詢數(shù)據(jù)將在非結(jié)構(gòu)化的方式顯示所有的文件。如果顯示結(jié)果是格式化的,那么可以用除了方法還有方法,僅返回一個(gè)文檔。文檔排序方法,方法接受一個(gè)包含字段列表以及排序順序的文檔。
MongoDB啟動(dòng)服務(wù)器
第一步:下載安裝包
第二步:解壓下載到的安裝包,找到bin目錄下面全部.exe文件
第三步:在該目錄下新建“data”文件夾,它將會(huì)作為數(shù)據(jù)存放的根文件夾。
第四步:打開(kāi)CMD窗口,切換到該目錄下,按照如下方式輸入命令:mongod --dbpath G:MongoDBdata
第四步:測(cè)試是否啟動(dòng),http://localhost:27017/
MongoDB 插入文檔db.collection_name.insert(document) , 使用 insert() 或 save() 方法向集合中插入文檔,如果該集合不在該數(shù)據(jù)庫(kù)中, MongoDB 會(huì)自動(dòng)創(chuàng)建該集合并插入文檔。
MongoDB 可以將數(shù)據(jù)定義為一個(gè)變量,執(zhí)行插入操作:db.col.insert(document),如果不指定 _id 字段 save() 方法類似于 insert() 方法。如果指定 _id 字段,則會(huì)更新該 _id 的數(shù)據(jù)。
MongoDB 語(yǔ)法use database_name命令:如果數(shù)據(jù)庫(kù)不存在,則創(chuàng)建數(shù)據(jù)庫(kù),否則切換到指定數(shù)據(jù)庫(kù)(默認(rèn)為 test)
db.dropDatabase()命令: 刪除當(dāng)前數(shù)據(jù)庫(kù),默認(rèn)為 test
show dbs 命令:查看所有數(shù)據(jù)庫(kù)
db 命令: 查看當(dāng)前數(shù)據(jù)庫(kù)名。
db.createCollection(name, options)命令:創(chuàng)建集合
MongoDB中并不需要?jiǎng)?chuàng)建集合。 當(dāng)插入一些文檔 MongoDB 會(huì)自動(dòng)創(chuàng)建集合。db.yiibai.insert({"name" : "yiibai"})
show collections 命令:檢查創(chuàng)建的集合
db.collection_name.drop() 命令:從數(shù)據(jù)庫(kù)中刪除集合。
db.collection_name.find()命令:從集合查詢MongoDB數(shù)據(jù)
find() 將在非結(jié)構(gòu)化的方式顯示所有的文件。 如果顯示結(jié)果是格式化的,那么可以用db.collection_name.find().pretty()
除了find()方法還有findOne()方法,僅返回一個(gè)文檔。
MongoDB投影,只選擇需要的數(shù)據(jù),而不是選擇整個(gè)一個(gè)文檔的數(shù)據(jù)?。db.collection_name.find({},{KEY:1})
db.mycol.update({key1:value1},{$set:{key2:value2}})命令:將現(xiàn)有的文檔中的值更新
默認(rèn)情況下,MongoDB將只更新單一文件,更新多,需要一個(gè)參數(shù) "multi" 設(shè)置為 true。db.mycol.update({"title":"MongoDB Overview"},{$set:{"title":"New MongoDB Tutorial"}},{multi:true})
db.mycol.remove(DELLETION_CRITTERIA)命令:用于從集合中刪除文檔
db.mycol.remove()命令:刪除所有文件
RDBMS Where子句等效于MongoDB
AND條件:使用db.mycol.find({key1:value1, key2:value2}).pretty()命令
OR條件:使用db.mycol.find({$or: [{key1: value1}, {key2:value2}]}).pretty(),需要使用$or關(guān)鍵字
使用 AND 和 OR條件:使用db.mycol.find({"likes": {$gt:10}, $or: [{key1:value1}, { key2:value2}] }).pretty()命令
記錄:Limit() 方法,db.collection_name.find().limit(NUMBER),skip()也接受數(shù)字類型參數(shù)并用于跳過(guò)文件數(shù)。
db.collection_name.find().limit(NUMBER).skip(NUMBER)
文檔排序:sort()方法, sort() 方法接受一個(gè)包含字段列表以及排序順序的文檔。 要使用1和-1指定排序順序。1用于升序,而-1是用于降序。
db.mycol.find({},{"title":1,_id:0}).sort({"title":-1})
MongoDB索引:使用db.mycol.ensureIndex({"title":1,"description":-1})
索引支持查詢高效率執(zhí)行,索引是特殊的數(shù)據(jù)結(jié)構(gòu),存儲(chǔ)在一個(gè)易于設(shè)置遍歷形式的數(shù)據(jù)的一小部分。索引存儲(chǔ)在索引中指定特定字段的值或一組字段,并排序字段的值。
MongoDB 聚合:使用db.yibai.aggregate([{$group:{_id:"$name",num:{$sum:1}}}])
上述用途將等效于sql查詢:select name, count(*) from mycol group by name
MongoDB 復(fù)制: 通過(guò)使用副本集的復(fù)制來(lái)實(shí)現(xiàn)。副本集是一組承載同一個(gè)數(shù)據(jù)集的mongod實(shí)例。在副本的一個(gè)節(jié)點(diǎn)是接收所有的寫(xiě)操作主節(jié)點(diǎn)。所有的實(shí)例,次級(jí),應(yīng)用操作從主以便它們具有相同的數(shù)據(jù)集。副本集只能有一個(gè)主節(jié)點(diǎn)。
聚集表達(dá)式
$sum :從集合累加所有文檔中的定義值
$avg : 從集合中的所有文檔計(jì)算所有給定值的平均值
$min : 從集合中獲取的所有文件的最小的相應(yīng)值
$max :從集合中的所有文檔中的相應(yīng)值中獲取最大值
$push : 插入數(shù)組值到文檔中
$addToSet :插入值所產(chǎn)生的數(shù)組到文檔中,但不會(huì)產(chǎn)生重復(fù)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/19574.html
摘要:復(fù)制一份,命名為,修改文件內(nèi)容如下注意改為我們第一步創(chuàng)建的目錄,端口號(hào)改為這個(gè)隨意,只要該端口沒(méi)被占用即可,表示這是一個(gè)配置服務(wù)器,另外由于我們的配置服務(wù)器要做成備份集,所以要設(shè)置。 分片是指將數(shù)據(jù)拆分,拆分后存放在不同的機(jī)器上的過(guò)程,以此來(lái)降低單個(gè)服務(wù)器的壓力,同時(shí)也解決單個(gè)服務(wù)器硬盤空間不足的問(wèn)題,讓我們可以用廉價(jià)的機(jī)器實(shí)現(xiàn)高性能的數(shù)據(jù)架構(gòu)。有的小伙伴不理解分片和副本集的差異,一言...
摘要:小結(jié)是聚合管道查詢使用的方法,參數(shù)是數(shù)組,每個(gè)數(shù)組元素就是一個(gè),中運(yùn)用操作符對(duì)數(shù)據(jù)進(jìn)行處理后再交由下一個(gè),直到?jīng)]有下個(gè),就輸出最終的結(jié)果,而數(shù)據(jù)的處理則是通過(guò)使用操作符,本文先簡(jiǎn)單介紹了一下有哪些常用的操作符,下一篇再詳細(xì)說(shuō)明。 前言:一般查詢可以通過(guò)find方法,但如果是比較復(fù)雜的查詢或者數(shù)據(jù)統(tǒng)計(jì)的話,find可能就無(wú)能為力了,這時(shí)也許你需要的是aggregate. 什么是聚合管道(...
摘要:價(jià)格目前的非關(guān)系型數(shù)據(jù)庫(kù)基本都是免費(fèi)的功能實(shí)際開(kāi)發(fā)中,很多業(yè)務(wù)需求,其實(shí)并不需要完整的關(guān)系型數(shù)據(jù)庫(kù)功能,非關(guān)系型數(shù)據(jù)庫(kù)的功能就足夠使用了。目的是為應(yīng)用提供擴(kuò)展的高性能的數(shù)據(jù)存儲(chǔ)方案。我們平時(shí)大多還是使用修改器來(lái)修改下一節(jié)我們來(lái)認(rèn)識(shí)修改器 我們先來(lái)了解一下非關(guān)系型數(shù)據(jù)庫(kù)和關(guān)系型數(shù)據(jù)庫(kù),首先需要了解一下關(guān)系型數(shù)據(jù)庫(kù),比如,我們所熟知的 Oracle、mysql等。 關(guān)系型數(shù)據(jù)庫(kù)和非關(guān)系型數(shù)...
摘要:開(kāi)公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來(lái)越多時(shí),大家搜索起來(lái)就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章系列處理登錄請(qǐng)求前后端分離一使用完美處理權(quán)限問(wèn)題前后端分離二使用完美處理權(quán)限問(wèn)題前后端分離三中密碼加鹽與中異常統(tǒng)一處理 開(kāi)公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來(lái)越多時(shí),大家搜索起來(lái)就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章! Spring Boo...
閱讀 3032·2021-11-24 09:39
閱讀 2271·2021-10-08 10:05
閱讀 2761·2021-09-24 13:52
閱讀 1580·2021-09-22 15:07
閱讀 598·2019-08-30 15:55
閱讀 1816·2019-08-30 15:53
閱讀 698·2019-08-30 15:44
閱讀 3124·2019-08-30 11:20