按时间分类数据统计,并分页查找具体哪一天的详细数据

目的

有A,B,C,D四种商品,现在我们需要对他们做分类统计,比如,A是一组,CD是一组,我们需要按组获取他们有段时间内售出的商品信息,并要能分页查看。这儿不能使用 mysql in() 查询。

难点

难点是,每天的售出数量是不定的,要是你能mysql in(),那就不是事,但要是你不能mysql in(), 那么你需要前后拼接好这儿的分页数据,比如:今天是10号9点,售出10;昨天是9号,售出199;8号,20;7号1;6号299;你按20条一页,怎么很好的衔接上。

思路

思路是,今天的数据不管,是实时的,可以实时取;以前的数据,在数据库按商品分别存储,如4个商品,就存储4份数据;然后按日期倒序做加法统计存储在redis中,如:10号10条,9号199条,8号20条,7号1;存储在redis中,10号不是这儿的逻辑存储,9号199,8号219,7号 220;然后按传入的pagesize,pagenum,做数据切割匹配。这样就能获得计数开始和结束的时间。如,pagesize = 50,pagenum = 5,那么 先200 – 10(10号的)=190,要计算 190是处在那一天,结束是在哪天,结果是9号到6号。然后你从数据库中获得 9号到6号的数据,在程序中做分页处理。

具体

打字好累,实在不想写。

ps1

我这儿查询都是一天数据进行查询的,数据量也不是很大的情况,没有在mysql中进行分组查询,因为对接的三分它就不支持分组查询。数据量大的情况没有处理过,想当然的想法就是时间细分,如按小时统计,保证最终查询数据时的足够精确,数据量小。

ps2

询结果可以临时缓存,设置定时过期,如 1小时,保证常用分页数据的快速获取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值