Mongodb常用查询命令

分类:软件编程
阅读:18116
作者:majingjing
发布:2021-12-24 17:02

聚合使用形式

  1. pipeline = [$stage1, $stage2, ... $stageN];
  2. db.<COLLECTION>.aggregate(
  3. pipeline,
  4. { options }
  5. );

常用运算符

阶段 解释
$mod 取模运算
$log log指数
$and
$or
$not
$gt 大于
$eq 等于
$lt 小于
阶段 解释
$match 过滤
$project 投影
$sort 排序
$group 分组
$skip/$limit 结果限制
$unwind 展开数组
$graphLookup 图搜索
$facet/$bucket 分面搜索

聚合指令

$match

image-20211224165506762

$project

image-20211224165541577

$group

image-20211224165609113

$slice

image-20211224165638288

$unwind

image-20211224165703572

$sort , $skip , $limit

image-20211224165800132

$out

image-20211224165829649

应用场景

示例文档

  1. {
  2. cust_id: "abc123", // 客户 id
  3. ord_date: ISODate("2012 - 11 - 02T17: 04: 11.102Z"), // 下单时间
  4. status: "A",//订单状态
  5. price: 50,// 总金额
  6. items: [
  7. // 子订单
  8. {
  9. sku: "xxx",
  10. qty: 25,
  11. price: 1
  12. }, {
  13. sku: "yyy",
  14. qty: 25,
  15. price: 1
  16. }
  17. ]
  18. }

查询指令

文档计数

image-20211224163508941

字段值累加

image-20211224163614021

根据单一字段分组

image-20211224164128045

根据单一字段分组并排序

image-20211224164201382

多字段分组统计

image-20211224164302926

对统计数据进行筛选

image-20211224164340405

image-20211224164422595

数组拆分后分组统计

image-20211224164443952