mongodb数据库管道操作

1.$project(修改文档的结构,可以用来重命名、增加或删除文档中的字段)

db.order.aggregate([

{

$project:{ rade_no:1, all_price:1}

}

])

2.$match(用于过滤文档。用法类似于 find() 方法中的参数)

db.order.aggregate([

{

$project:{ rade_no:1, all_price:1}

},

{

$match:{"all_price":{$gte:80}}

}

])

3.$group(将集合中的文档进行分组,可用于统计结果。统计每个订单的订单数量,按照订单号分组)

db.order.aggregate([

{

$group:{ _id:"$order_id", total:{$sum:"$num"}}

}

])

4.$sort(将集合中的文档进行排序)

db.order.aggregate([

{

$project:{ rade_no:1, all_price:1}

},

{

$match:{"all_price":{$gte:80}}

},

{

$sort:{"all_price":1}

}

])

5.$limit(取一定数量的数据)

db.order.aggregate([

{

$project:{ rade_no:1, all_price:1}

},

{

$match:{"all_price":{$gte:80}}

},

{

$sort:{"all_price":1}

},

{

$limit:1

}

])

6.$skip(跳过几条数据去取数据)

db.order.aggregate([

{

$project:{ rade_no:1, all_price:1}

},

{

$match:{"all_price":{$gte:80}}

},

{

$sort:{"all_price":1}

},

{

$skip:1

}

])

7.$lookup(表关联)

db.order.aggregate([

{

$lookup:

{

from: "order_item", localField: "order_id", foreignField: "order_id", as: "items"

}

}

])

这里也可以配合其他管道操作进行操作

posted @ 2019-07-29 22:38  星马豪  阅读(438)  评论(0编辑  收藏  举报