
mongodb
文章平均质量分 51
Xu_jesse
这个作者很懒,什么都没留下…
展开
-
mongo group按月统计最近一年内的数据
需求描述: 数据在mongo中,要求按月统计最近一年内的数据; 问题描述: 1.每天都会有数据,但是数据每天都是全量的,也就是说2号的数据包含1号的全部数据; 所以,按月统计,每月只能取最后一天的数据进行加和; 2.时间字段只有一个,所以需要对时间格式化成日和月的形式:日用来过滤每月最后一天; 月用来统计每月数据量; 话不多说,上代码 @Autowired private MongoTemplate mongoTemplate; @Override public原创 2021-12-09 17:45:25 · 1409 阅读 · 0 评论 -
mongoTemplate多级关联查询自查询,并将数据同步到es中
查了一下,网上的多级关联一般都是一个主表关联两个子表,没有主–子--孙 表的这种关联查询形式,故此,记录一下。 需求描述: 将mongo中的column相关的信息同步到es。 相关结构: column中有tableId,table表中有dbId, db中有dbCode,而dbType和InstanceName在mysql中,完整的db:dBCode+dbType+InstanceName 注意: 上面的column、table、db,它们其实都是一个表(在一个表中存储),我是为了大家好理解,所原创 2021-09-27 10:07:41 · 1005 阅读 · 0 评论 -
MongoTemplate查询海量数据
在进行数据迁移时,需要从mongodb中获取数据,而数据有比较多,所以不能一次性取出所有数据,需要分批获取数据。分批获取数据主要有两种方式: Criteria criteria = Criteria.where("typeName").is("rdbms_table") .and("status").is("ACTIVE") .and("attributes.versionType").is("formal"); Query query = new Q原创 2021-09-26 14:23:40 · 3293 阅读 · 0 评论 -
mongoTemplate实现按天统计数据,每天需要取最新的数据
> 业务需求: 按天统计数据,所有数据都在mongodb中。 > 难点: 不能直接统计,需要过滤每天数据。每天数据有多条,需要查询每天中的最新的一批数据,而最新的一批数据又在不同的任务中 mongodb中不支持子查询。 所以,一次性就查不出来 > 解决办法: 采用多次查询 第一次查询按天分组查出当天最新的一批数据。 第二次再将第一次的结果集作为条件再去mongodb中进行查询统计。 返回数据格式如下图: 最终效果如下图: package com.jesse.hbm.se原创 2021-09-18 18:49:20 · 2433 阅读 · 0 评论