MongoDB查詢文檔踩坑記!
1 統(tǒng)計條數(shù)
統(tǒng)計記錄條件使用count()方法.
以下語句統(tǒng)計spit集合的記錄數(shù):
db.comment.count()
1
按條件統(tǒng)計 ,例如統(tǒng)計userid為1013的記錄條數(shù):
db.comment.count({userid:"1013"})
1
2 模糊查詢
MongoDB的模糊查詢是通過正則表達(dá)式的方式實現(xiàn)的.
格式
/模糊查詢字符串/
1
查詢評論內(nèi)容包含“流量”的所有文檔,代碼如下:
db.comment.find({content:/流量/})
1
db.comment.find({content:/^加班/})
1
3 大于 小于 不等于
<, <=, >, >= 這個操作符也是很常用的.
格式
db.集合名稱.find({ "field" : { $gt: value }}) // 大 于: field > value db.集合名稱.find({ "field" : { $lt: value }}) // 小 于: field < value db.集合名稱.find({ "field" : { $gte: value }}) // 大于等 于: field >= value db.集合名稱.find({ "field" : { $lte: value }}) // 小于等 于: field <= value db.集合名稱.find({ "field" : { $ne: value }}) // 不等 于: field != value
1
2
3
4
5
查詢評論數(shù)大于1000的記錄:
db.comment.find({thumbup:{$gt:1000}})
1
4 包含與不包含
包含使用$in操作符
查詢評論集合中userid字段包含1013和1014的文檔:
db.comment.find({userid:{$in:["1013","1014"]}})
1
不包含使用$nin操作符
查詢評論集合中userid字段不包含1013和1014的文檔:
db.comment.find({userid:{$nin:["1013","1014"]}})
1
5 條件連接
我們?nèi)绻枰樵兺瑫r滿足兩個以上條件,需要使用$and操作符將條件進(jìn)行關(guān)聯(lián)
(相當(dāng)于SQL的and).
格式
$and:[ {條件},{條件},{條件} ]
1
查詢評論集合中thumbup大于等于1000 并且小于2000的文檔:
db.comment.find({$and:[ {thumbup:{$gte:1000}} ,{thumbup: {$lt:2000} }]})
1
如果兩個以上條件之間是或者的關(guān)系,我們使用操作符進(jìn)行關(guān)聯(lián),與前面and的使用
方式相同,格式為:
$or:[ {條件},{條件},{條件} ]
1
查詢評論集合中userid為1013,或者數(shù)小于2000的文檔記錄:
db.comment.find({$or:[ {userid:"1013"} ,{thumbup:{$lt:2000} }]})
1
6 列值增長
對某列值在原有值的基礎(chǔ)上進(jìn)行增加或減少,可以使用$inc運算符:
db.comment.update({_id:"2"},{$inc:{thumbup:1}})
1
MongoDB 面向?qū)ο缶幊?/p>
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。