MongoDB#常用语句

  • 创建TTL索引(自动删除过期数据)

db.xxx_collection.createIndex({ createTime: 1 }, { expireAfterSeconds: 1 * 24 * 60 * 60 * 1000 });

  • 查询JavaScript函数(mongosh)

db.system.js.find

  • 查询document条数

db.getCollection('xxx').countDocuments({})

  • 根据_id查询

{'_id': ObjectId('xxx')}

  • in查询

{ field_name: { $in: [ "field_value1", "field_value2" ] } }

  • 时间范围查询

{"updateTime": {gte: ISODate('2024-01-01'), lte: ISODate('2024-12-12')}}

  • like查询

{ field_name: { $regex: /xxx/ } }

  • aggregate查询
sql 复制代码
db.myCollection.aggregate([
  {
    $group: {
      _id: "$groupId", // 根据groupId分组
      count: { $sum: 1 }, // 分组内文档数量累加,并存储到count字段中
      documents: { $push: "$$ROOT" }  // 将原始文档存储到 documents 数组中
    }
  },
  {
    $match: {
      count: { $gt: 2 } // 过滤出count字段值大于2的分组
    }
  }
]);
// $group聚合操作默认内存中执行,超出限制可配置allowDiskUse使用磁盘存储临时数据
相关推荐
J2虾虾14 小时前
给Redis增加密码
数据库·redis·缓存
Mr数据杨14 小时前
【Dv3Admin】Django通用自定义工作台卡片
数据库·django·sqlite
山峰哥14 小时前
SQL优化全攻略:从索引策略到Explain实战解析
大数据·数据库·sql·oracle·性能优化·编辑器
JuneXcy15 小时前
第9章 关系模式的规范化设计理论
数据库·mysql
larance15 小时前
NebulaGraph 数据库部署与运维指令清单
linux·服务器·数据库
想不明白的过度思考者15 小时前
【MyBatis 知识点解析】#{} 与 ${} 的区别及 SQL 注入实战演示
java·数据库·spring boot·sql·mybatis
tongxh42315 小时前
MySQL Workbench菜单汉化为中文
android·数据库·mysql
yc_xym15 小时前
Redis经典应用-分布式锁
数据库·redis·分布式
正在走向自律15 小时前
电科金仓MySQL迁移实战:一个技术专家的深度踩坑与突围笔记
数据库·mysql·电科金仓·kfs·kdts
moonlight030415 小时前
索引和事务
数据库