您的位置:首页 > 数据库 > Mongodb

数据库-mongodb-高级查询表达式

2016-03-20 21:08 423 查看
不等于 $nq
NOSQL后面的这个cat_id:1就是显示,id:0就是不显示的意思

高于3000元的商品

运算符对应mysql运算符
$gt>
$gte>=
$inin
$lt<
$lte<=
$ne!=
$ninnot in
$all无对应项,指数组所有单元匹配
in的操作

all

逻辑运算符

名称描述
$oror
$andand
$notnot
$nor无对应项,“所有举例条件都不成功,则为真”
$and用法

db.goods.find({$and:[{shop_price:{$lt:3000},{shop_price:{$gt:2000}}]},{goods_name:1,goods_count:1});

$nin的用法

等同于

$nor用法

既不是3,也不是4

元素运算符

名称描述
$exists某列存在则为真
$mod满足某求余条件则为真
$type数据为某类型则为真
good_id除5取余,余数为0 的被选择出来

找出文档中存在age字段的记录

类型判断有个列表



$where

这个关键字的用法是将mongodb存储的二进制先转换为json格式的数据,然后再调用js的引擎来执行js代码,效率比较低,不推荐使用,好处是表达式可以非常的复杂,如果难以实现又不追求效率就可以考虑这种写法

加上多种条件后复杂的判断

$regex 正则匹配为真 效率不高

db.goods.find({goods_name:{$regex:/^诺基亚.*/}},{goods_name:1,goods_id:1});

来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: