POSTGRES Group BY中的聚合函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POSTGRES Group BY中的聚合函数相关的知识,希望对你有一定的参考价值。
我有以下Postgres代码,我想分组BY "Personal CC"
但由于显而易见的原因我不能为聚合字段这样做。
如果我不放Group BY
然后我得到"Number of Assistant Supervisors in Same Month"
Personal CC
这是错误的。
请帮我说明如何计算金额。是的,我做了一些研究,并且知道我们可以使用INNER JOIN,但我失败了。
- 期望的结果应该是降序中的个人CC总和
- 总和应仅适用于我在下面给出的月份和年份,但它需要全年的价值观,这是错误的
- 我只需要在Group中包含个人CC的总和,如果没有,请给我们一个解决方案,如何通过不将它包含在Group BY中来获得总和
- 我没有阅读文档,但我一直在研究它
对于每个赞助商,我有各个国家的每月cc。个人CC值。每个月。我想总结它们以获得一个独特的总结值
SELECT
extended_downline."Sponsor FBO ID"
,extended_downline."Sponsor Name"
,mcc.processing_month__c AS "Processing Month"
,mcc.processing_year__c AS "Processing Year"
,sum(mcc.personal_cc_mtd__c) AS "Personal CC"
,sum("Same Month") as "Number of Assistant Supervisors in Same Month"
,bool_or(mcc.current_month_active__c) AS "Current Month Active"
FROM extended_downline
LEFT OUTER JOIN connect.monthly_cc__c mcc ON mcc.distributor__c = extended_downline.sponsor_distributor__c
AND mcc.op_company__c = extended_downline."Operating Company"
AND (
(
mcc.processing_year__c = '2017'
AND mcc.processing_month__c = 10
)
)
WHERE extended_downline."Same Month" <> 0
AND extended_downline."Generation" <> 0
AND mcc.personal_cc_mtd__c IS NOT NULL
GROUP BY
extended_downline."Sponsor FBO ID"
,extended_downline."Sponsor Name"
,mcc.processing_year__c
,mcc.processing_month__c
,mcc.personal_cc_mtd__c
,extended_downline."Same Month"
ORDER BY "Personal CC" DESC LIMIT 20
答案
你可以使用Order By ColumnPosition
例如:
Order By 4 desc
以上是关于POSTGRES Group BY中的聚合函数的主要内容,如果未能解决你的问题,请参考以下文章