15nodejs教程mongodb8-17集含代碼第五講_第1頁
15nodejs教程mongodb8-17集含代碼第五講_第2頁
15nodejs教程mongodb8-17集含代碼第五講_第3頁
15nodejs教程mongodb8-17集含代碼第五講_第4頁
15nodejs教程mongodb8-17集含代碼第五講_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

Count+Distinct+Group數(shù)據(jù)庫命令操作固定集合特性GridFS文件系統(tǒng)補(bǔ)充服務(wù)器端腳本Count+Distinct+Group1.Count

請查詢persons中美國學(xué)生的人數(shù).

db.persons.find({country:"USA"}).count()2.Distinct

請查詢出persons中一共有多少個國家分別是什么.

db.runCommand({distinct:"persons“,key:"country"}).values3.Group

語法:db.runCommand({group:{ ns:集合名字,Key:分組的鍵對象,Initial:初始化累加器,$reduce:組分解器,Condition:條件,Finalize:組完成器}})

分組首先會按照key進(jìn)行分組,每組的每一個文檔全要執(zhí)行$reduce的方法,

他接收2個參數(shù)一個是組內(nèi)本條記錄,一個是累加器數(shù)據(jù).

3.1請查出persons中每個國家學(xué)生數(shù)學(xué)成績最好的學(xué)生信息(必須在90以上)

Count+Distinct+Groupdb.runCommand({group:{ns:"persons",key:{"country":true},initial:{m:0},$reduce:function(doc,prev){if(doc.m>prev.m){prev.m=doc.m;=;prev.country=doc.country;}},condition:{m:{$gt:90}}}})3.2在3.1要求基礎(chǔ)之上吧沒個人的信息鏈接起來寫一個描述賦值到m上finalize:function(prev){prev.m=+"Mathscores"+prev.m}

Count+Distinct+Group4.用函數(shù)格式化分組的鍵4.1如果集合中出現(xiàn)鍵Counrty和counTry同時存在那分組有點(diǎn)麻煩這要如何解決呢?$keyf:function(doc){return{country:doc.counTry}},…..數(shù)據(jù)庫命令操作1.命令執(zhí)行器runCommand1.1用命令執(zhí)行完成一次刪除表的操作db.runCommand({drop:"map"}){"nIndexesWas":2,"msg":"indexesdroppedforcollection","ns":"foobar.map","ok":1}2.如何查詢mongoDB為我們提供的命令

1.在shell中執(zhí)行db.listCommands()2.訪問網(wǎng)址3.常用命令舉例

3.1查詢服務(wù)器版本號和主機(jī)操作系統(tǒng)

db.runCommand({buildInfo:1})3.2查詢執(zhí)行集合的詳細(xì)信息,大小,空間,索引等……db.runCommand({collStats:"persons"})3.3查看操作本集合最后一次錯誤信息

db.runCommand({getLastError:"persons"})固定集合特性1.固定集合概念固定集合特性2.固定特性

2.1固定集合默認(rèn)是沒有索引的就算是_id也是沒有索引的2.2由于不需分配新的空間他的插入速度是非??斓?.3固定集合的順是確定的導(dǎo)致查詢速度是非??斓?.4最適合的是應(yīng)用就是日志管理3.創(chuàng)建固定集合

3.1創(chuàng)建一個新的固定集合要求大小是100個字節(jié),可以存儲文檔10個db.createCollection("mycoll",{size:100,capped:true,max:10})3.2把一個普通集合轉(zhuǎn)換成固定集合

db.runCommand({convertToCapped:”persons”,size:100000})4.反向排序,默認(rèn)是插入順序排序.

4.1查詢固定集合mycoll并且反響排序

db.mycoll.find().sort({$natural:-1})5.尾部游標(biāo),可惜shell不支持java和php等驅(qū)動是支持的

5.1尾部游標(biāo)概念

這是個特殊的只能用到固定級和身上的游標(biāo),他在沒有結(jié)果的時候

也不回自動銷毀他是一直等待結(jié)果的到來GridFS文件系統(tǒng)1.概念GridFS是mongoDB自帶的文件系統(tǒng)他用二進(jìn)制的形式存儲文件

大型文件系統(tǒng)的絕大多是特性GridFS全可以完成2.利用的工具3.使用GridFS

3.1查看GridFS的所有功能cmdmongofiles

3.2上傳一個文件

mongofiles-dfoobar-l"E:\a.txt"put"a.txt“

3.3查看GridFS的文件存儲狀態(tài)

利用VUE查看

集合查看db.fs.chunks.find()和db.fs.files.find()存儲了文件系統(tǒng)的所有文件信息GridFS文件系統(tǒng)3.4查看文件內(nèi)容C:\Users\thinkpad>mongofiles-dfoobarget"a.txt“VUE可以查看,shell無法打開文件3.5查看所有文件mongofiles-dfoobarlist3.5刪除已經(jīng)存在的文件VUE中操作mongofiles-dfoobardelete'a.txt'服務(wù)器端腳本1.Eval

1.1服務(wù)器端運(yùn)行eval

db.eval("function(name){returnname}","uspcat")2.Javascript的存儲

2.1在服務(wù)上保存js變量活著函數(shù)共全局調(diào)用1.把變量加載到特殊集合system.js中db.sys

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論