本文介绍了为多个层次组优化 SUM OVER PARTITION BY的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!
问题描述
我有一张如下表:
我需要在不同的组中找到 SUM([Spend]
如下:
I need to find SUM([Spend]
over different groups as follow:
- 整个表中所有行的总支出
- 每个区域 的总支出
- 每个地区和国家组的总支出
- 每个地区、国家/地区和广告客户组的总支出
- Total Spend over all the rows in the whole table
- Total Spend for each Region
- Total Spend for each Region and Country group
- Total Spend for each Region, Country and Advertiser group
所以我在下面写了这个查询:
So I wrote this query below:
但是对于只有 450K 行的表,该查询需要 15 分钟以上的时间.我想知道是否有任何方法可以优化此性能.预先感谢您的回答/建议!
But that query takes >15 minutes for a table of just 450K rows. I'd like to know if there is any way to optimize this performance. Thank you in advanced for your answers/suggestions!
推荐答案
你对问题的描述向我暗示了分组集
:
Your description of the problem suggests grouping sets
to me:
我不知道这是否会更快,但它似乎更符合您的问题.
I don't know if this will be faster, but it certainly seems more aligned with your question.
这篇关于为多个层次组优化 SUM OVER PARTITION BY的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!
本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!