在SQL Server中按季度分组yearmonth字段

用户名

我的数据库中有一个int字段,代表2015年1月的201501代表年和月,我需要按report_date字段分组并显示季度数据。该表采用以下格式。Reporting_date是一个int字段而不是datetime并且interest_payment是浮动的

reporting_date  interest_payment
200401          5
200402          10
200403          25
200404          15
200406          5
200407          20
200408          25
200410          10

查询的输出应如下所示

reporting_date  interest_payment
Q1 -2004          40
Q2 -2004          20
Q3 -2004          40
Q4 -2004          10

我尝试使用普通的group by语句

select  reporting_date , sum(interest_payment) as interest_payment from testTable
group by reporting_date

但输出的结果有所不同。任何帮助将不胜感激

谢谢

分组之前,您需要计算report_quarter,该值等于

 (reporting_date%100-1)/3

然后选择

select report_year, 'Q'+cast(report_quarter+1 as varchar(1)), SUM (interest_payment)
from 
(
    select 
        *,
        (reporting_date%100 - 1)/3 as report_quarter,
        reporting_date/100 as report_year
    from @x 
) T
group by report_year, report_quarter
order by report_year, report_quarter

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

获取按 SQL Server 中不同字段分组的总和

来自分类Dev

SQL Server查询按字段分组错误

来自分类Dev

SQL Server查询按字段分组错误

来自分类Dev

SQL Server查询按字段分组错误

来自分类Dev

在SQL Server中按子查询分组

来自分类Dev

在SQL Server中按顺序分组

来自分类Dev

在SQL Server中按顺序分组

来自分类Dev

在SQL Server中按子查询分组

来自分类Dev

在SQL Server中按count()子句分组

来自分类Dev

在SQL Server中按范围分组

来自分类Dev

在SQL中按&分组

来自分类Dev

Oracle 11g SQL按季度分组

来自分类Dev

SQL-按季度最后一天分组

来自分类Dev

SQL Server按位置分组

来自分类Dev

按范围SQL Server分组

来自分类Dev

SQL Server:按连续分组

来自分类Dev

在SQL Server中按varbinary(MAX)或varchar(MAX)分组

来自分类Dev

在SQL Server中按问题分组,从MySQL迁移

来自分类Dev

在SQL Server中按查询分组返回重复项

来自分类Dev

在SQL Server中按varbinary(MAX)或varchar(MAX)分组

来自分类Dev

如何在SQL Server中按多列分组

来自分类Dev

如何在SQL SERVER中按名称对总计分组

来自分类Dev

SQL Server 2012中按子句分组的更改列映射

来自分类Dev

SQL:按多个字段分组

来自分类Dev

SQL按2个字段分组

来自分类Dev

在SQL中按逗号分组

来自分类Dev

在SQL查询中按分组

来自分类Dev

在 SQL 中按周分组

来自分类Dev

SQL Server:按范围分组日期