SQL-Partition by
Posted rainbo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL-Partition by相关的知识,希望对你有一定的参考价值。
统计每个月,每个地区,用户缴费的月总计,年累计。
既然有月总计,年累计,应该就是先统计出月总计的数据,再用partition by 做年累计。
但是忘记了一个前提,切片的维度:月,地区,不一定每个月都存在(如果放大到地区,应该是每个月都存在的)。如果是这样,年累计就会出现问题,比如一个用户,这个月没有交费,但是前几个月是有交费的,那这个用户在这个月是有年累计数据。但是年累计数据是在月统计数据基础上,如果没有月数据,也不存在年累计数据。
对于这样的情况,就不能红切片来解决。
可以建一个月份表,跟实际的缴费数据left join 关联。月份表,与实际缴费数据关联,一个月份,对应这个月份及之前所有的月份的缴费数据。用SUM来统计结果。
以上是关于SQL-Partition by的主要内容,如果未能解决你的问题,请参考以下文章