mongodb条件操作符

样本数据


db.media.find().pretty()
{
"_id" : ObjectId("585f822891c851f743fea7b5"),
"Type" : "DVD",
"Title" : "Blade Runner",
"Released" : 1982
}
{
"_id" : ObjectId("585f824d91c851f743fea7b6"),
"Type" : "DVD",
"Title" : "Tony Story3",
"Released" : 2010
}
{
"_id" : ObjectId("585f828391c851f743fea7b7"),
"Type" : "DVD",
"Title" : "Matrix",
"Released" : 1999
}

执行大于和小于比较$gt、$lt、$gte、$lte

db.media.find({Released:{$gt:1999}})

{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }

db.media.find({Released:{$gte:1999}})

{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }

db.media.find({Released:{$lt:1999}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }

db.media.find({Released:{$lte:1999}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }

获取除特定文档外所有的文档($ne)

db.media.find({Released:{$ne:1999}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }

指定一个匹配的数组($in)

db.media.find({Released:{$in:[1999,2000,2001]}})

{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }

查找不在数组中的文档($nin)

db.media.find({Released:{$nin:[1999,2000,2001]}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }

匹配文档中所有的属性($all)

db.media.find({Released:{$all:[1999,2000]}})

没有文档返回,因为没有同时满足发行年份为1999,2000的DVD。

在文档中搜索多个表达式

db.media.find({$or:[{Title:’Matrix’},{Released{$ne:1999}}]})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }
返回满足其中任何一个条件的文档

返回含有特定字段的文档

db.media.find({Released:{$exists:true}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }

否定任何标准操作符执行的检查($not)

db.media.find({Released:{$gt:1999}})

{ “_id” : ObjectId(“585f824d91c851f743fea7b6”), “Type” : “DVD”, “Title” : “Tony Story3”, “Released” : 2010 }

db.media.find({Released:{$not:{$gt:1999}}})

{ “_id” : ObjectId(“585f822891c851f743fea7b5”), “Type” : “DVD”, “Title” : “Blade Runner”, “Released” : 1982 }
{ “_id” : ObjectId(“585f828391c851f743fea7b7”), “Type” : “DVD”, “Title” : “Matrix”, “Released” : 1999 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值