第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

mongodb數(shù)組查詢

mongodb數(shù)組查詢

蝴蝶不菲 2019-04-13 08:46:09
{'a':1,'b':2,'c':3,'d':[{'e':4,'f':5,'g':6},{'e':0,'f':'','g':3},{'e':1,'f':'','g':3},]}{'a':1,'b':2,'c':3,'d':[{'e':4,'f':'','g':6},{'e':0,'f':'','g':3},{'e':1,'f':'','g':3},]}這樣的記錄,問題是怎么獲取d數(shù)組中f都為空的文檔(如上的結果是文檔2)?謝謝
查看完整描述

2 回答

?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

??只知道這個用$where怎么實現(xiàn),其他方法我也暫時不知道。
注意
如果是經常性的查詢,強烈不建議使用$where,它會遍歷所有文檔,每個文檔都會從BSON轉換成javascript對象,然后通過表達式來處理,比常規(guī)查詢慢很多,只有走投無路時才用。先使用常規(guī)查詢進行過濾,然后再使用$where,這樣組合使用可以降低性能損失。如果可能先使用索引進行過濾,$where只用于對結果進行進一步過濾。
——————————————————————————————摘自《Mongodb權威指南(E2)》
代碼:
db.collection.find({"$where":function(){
vard=this.d,i=0,j=d.length;
for(i,j;iif(d[i].f!="")returnfalse;
};
returntrue;
}});
                            
查看完整回答
反對 回復 2019-04-13
?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

db.demo.find({d:{$not:{$elemMatch:{f:{$ne:""}}}}})
在mongoshell上測試了一下:
>db.demo.insert({
...'a':1,
...'b':2,
...'c':3,
...'d':[
...{'e':4,'f':'','g':6},
...{'e':0,'f':'','g':3},
...{'e':1,'f':'','g':3},
...]
...})
WriteResult({"nInserted":1})
>db.demo.insert({
...'a':1,
...'b':2,
...'c':3,
...'d':[
...{'e':4,'f':5,'g':6},
...{'e':0,'f':'','g':3},
...{'e':1,'f':'','g':3},
...]
...}
...)
WriteResult({"nInserted":1})
>db.demo.find({d:{$not:{$elemMatch:{f:{$ne:""}}}}})
{"_id":ObjectId("54129ff745d4261bacca6dcd"),"a":1,"b":2,"c":3,"d":[{"e":4,"f":"","g":6},{"e":0,"f":"","g":3},{"e":1,"f":"","g":3}]}
                            
查看完整回答
反對 回復 2019-04-13
  • 2 回答
  • 0 關注
  • 334 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號