mongodb多个条件查询in,日期查询,嵌套查询,统计集合总数等常用实例

1. 多个条件查询in

in

db.inventory.find( { qty: { $in: [ 5, 15 ] } } )

2. 日期查询

db.books.find({"time":{"$gt":ISODate("2019-06-29T00:00:00Z")}},{"time":1})
查询时间大于6-29,结果显示一列

 

db.getCollection('books').find({"pubtime" : {"$gte" : ISODate("2019-07-04T00:00:00.000Z"), "$lt":ISODate("2019-07-05T00:00:00.000Z")}}).count()

 

3. 嵌套查询

{
"series" : {
"cat" : "BSNI2019"
}
}

db.getCollection('t_books').aggregate([
    {$match: {"series.cat": "BSNI2019"}},
])

db.getCollection('t_books').aggregate([
    {$match: {"series": {$elemMatch : {"cat": 'BSNI2019'}}}},
])

 

4. 统计集合总数

db.getCollection('t_books').aggregate( [ { $group: { _id: null, myCount: { $sum: 1 } } }, { $project: { _id: 0 ,myCount : 1} } ] )

_id字段是必填的;但是,可以指定_id值为null来为整个输入文档计算累计值。

$sum: 1表示累加1,如果为n,则每次累加n

5. mongodb语法

5.1 $project

在 MongoDB 中可以使用 "$project" 来控制数据列的显示规则,可以执行的规则如下:

普通列({成员:1 | true}):表示要显示的内容
"_id" 列({"_id"0 | false}):表示 "_id" 列是否显示
条件过滤列({成员:表达式}):满足表达式之后的数据可以进行显示

 

参考

https://www.cnblogs.com/zhoujie/p/mongo1.html

posted @ 2019-06-25 19:51  PKICA  阅读(4280)  评论(0编辑  收藏  举报