MongoDB 按照某个字段分组,并按照分组的记录数降序排列

以下是一个示例查询:

php 复制代码
db.collection.aggregate([
  {
    $group: {
      _id: "$quoteId", // 按照quoteId字段进行分组
      count: { $sum: 1 } // 统计每个分组的记录数
    }
  },
  {
    $sort: {
      count: -1 // 按照记录数降序排序
    }
  }
])

在这个查询中:

  • group** 阶段将文档按照**quoteId** 字段进行分组,并使用**sum 操作符统计每个分组的记录数,保存为count字段。

  • $sort 阶段按照count字段降序排序,这样最多记录数的分组将排在前面。

你需要将db.collection替换为你的集合名称。

为什么会突然间学这个用法呢?

因为看到开发在mysql表里面某个字段长度设置的是2048,有其他开发提出了疑问,会不会有这么长,然后我就查了一下现有数据去确认一下大概字符长度。

相关推荐
千层冷面30 分钟前
Flask ORM 查询详解:Model.query vs db.session.query vs db.session.execute
数据库·python·django·flask
Navicat中国44 分钟前
Navicat 询问 AI | 如何转换 SQL 为另一种数据库类型
数据库·人工智能·sql·数据库开发·navicat
Runing_WoNiu1 小时前
Redis核心架构
数据库·redis·架构
nbsaas-boot1 小时前
用 FreeMarker 动态构造 SQL 实现数据透视分析
数据库·windows·sql·freemarker·数据报表
电商API_180079052472 小时前
大规模调用淘宝商品详情 API 的分布式请求调度实践
服务器·数据库·分布式·爬虫
Menior_2 小时前
【补充】数据库中有关系统编码和校验规则的简述
数据库·mysql·oracle
晴子呀3 小时前
分库分表和sql的进阶用法总结
数据库·sql
编程(变成)小辣鸡3 小时前
Redis 知识点与应用场景
数据库·redis·缓存
Kay_Liang3 小时前
从聚合到透视:SQL 窗口函数的系统解读
大数据·数据库·sql·mysql·数据分析·窗口函数
H2122021653 小时前
SQLite3库链接与加载问题解决方案
数据库·oracle·sqlite