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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

在MongoDB中查詢內(nèi)部數(shù)組大小

在MongoDB中查詢內(nèi)部數(shù)組大小

慕的地6264312 2019-10-29 12:54:50
考慮users集合中的MongoDB文檔:{ username : 'Alex', tags: ['C#', 'Java', 'C++'] }有沒(méi)有辦法tags從服務(wù)器端獲取數(shù)組的長(zhǎng)度(而不將標(biāo)簽傳遞給客戶端)?謝謝!
查看完整描述

3 回答

?
慕尼黑8549860

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊

如果用戶名Alex是唯一的,則可以使用以下代碼:


db.test.insert({username:"Alex", tags: ['C#', 'Java', 'C++'] });

db.test.aggregate(

  {$match: {username : "Alex"}}, 

  {$unwind: "$tags"},

  {$project: {count:{$add:1}}},

  {$group: {_id: null, number: {$sum: "$count" }}}

);

{ "result" : [ { "_id" : null, "number" : 3 } ], "ok" : 1 }


查看完整回答
反對(duì) 回復(fù) 2019-10-29
?
慕碼人2483693

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊

我認(rèn)為使用$ inc或通過(guò)計(jì)劃中的作業(yè)來(lái)計(jì)算每次保存(作為單獨(dú)的字段)時(shí)標(biāo)簽的數(shù)量可能更有效。


您也可以使用map / reduce進(jìn)行此操作(規(guī)范示例),但這似乎并不是您想要的。


我不確定是否可以完全按照您的要求進(jìn)行操作,但是您可以使用$ size查詢與特定大小匹配的所有文檔...


> db.collection.find({ tags : { $size: 3 }});

那將為您提供帶有3個(gè)標(biāo)簽的所有文檔...


查看完整回答
反對(duì) 回復(fù) 2019-10-29
  • 3 回答
  • 0 關(guān)注
  • 2110 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)