pgsql:现在1-12月12个字段,想根据当前月份来求累计值,比如现在是7月份,想累计1-7月的

pgsql:

现在1-12月12个字段(A,B,C,D...),想根据当前月份来求累计值,比如现在是7月份,想累计1-7月累计值,请问如何写?谢谢

柒年呀 发布于 2021-7-27 19:57
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
杨朝健Lv5中级互助
发布于2021-7-27 20:01

12个case when

最佳回答
0
liu.yangLv2初级互助
发布于2021-7-28 11:30(编辑于 2021-7-28 11:31)

先列转行 再日期过滤 汇总 可参考

select 其他字段,sum(mon_value)

from(

select 表其他字段,

unnest(array[

年份字段||'01',      

 年份字段||'02',       

年份字段||'03',         

年份字段||'04',         

年份字段||'05',         

年份字段||'06',         

年份字段||'07',         

年份字段||'08',         

年份字段||'09',         

年份字段||'10',         

年份字段||'11',        

 年份字段||'12'        ]) as year_mon,

unnest(array[

JANUARY,        

 FEBRUARY,        

 MARCH,         

APRIL,         

MAY,         

JUNE,         

JULY,        

 AUGUST,         

SEPTEMBER,         

OCTOBER,         

NOVEMBER,         

DECEMBER        ]) as mon_value

from 表名)tt 

where year_mon between 开始月 and 结束月 

group by 其他字段

  • 柒年呀 柒年呀(提问者) 列转行,是个好办法,不过目前不太适用我这个场景,非常感谢~
    2021-07-28 17:39 
  • 3关注人数
  • 692浏览人数
  • 最后回答于:2021-7-28 11:31
    请选择关闭问题的原因
    确定 取消
    返回顶部