MongoDB 常用 操作符

[TOC]

比較符

操作符 效果 例子
gt 大于 {"field": {$gt: value}}
lt 小于 {"field": {$lt: value}}
gte 大于等于 {"field": {$gte: value}}
lte 小于等于 {"field": {$lte: value}}
exists 存在與否 {"member": {$exists: true}}}
in 包含 {"member.age": {$in: [null], "$exists: true"}}
ne 不等于 {"member.age": {$ne: "mine"}}

邏輯符

操作符 效果 例子
exists 存在與否 {"couponsCode.0": {$exists: 1}} 數(shù)組存在第一條數(shù)據(jù)
or 或者 {"$or": [{"member.age": "23"}, {"member.name": "23333"}]}
and 并且 {"$and": [{"member.age": "23"}, {"member.name": "23333"}]}

特別的 $exists: true 表示字段存在

排序 sort

操作 效果 例子
asc 升序 .sort({"member.age": 1})
desc 降序 .sort({"member.age:": -1})

正則表達式

不匹配name以B開頭的記錄

db.collection.find({"name": {$not: /^B.*/}});

這種寫法需要把正則表達式放在 // 之中,如果某些平臺是完全使用字符串通訊,則會導(dǎo)致轉(zhuǎn)意問題,需要原生的正則表達式寫法

正則表達式原生寫法

var regNumber = '/^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/';
{mobile:  {$regex: regNumber}}

Where 查詢

不多用
e.g. 查詢一條age大于3的記錄
普通的查詢方法:

db.collection.find({age:{$gt:3}});

$where的數(shù)據(jù)比較符號來查詢

db.collection.find("this.age>3");
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容