Sql查询问题,急!!“如何按天、周、月、季度、年 进行分组查询”

时间:2022-04-26 13:36:05
如题  Sql 中如何按天、周、月、季度、年 进行分组查询

如下格式: 
注:要考虑不同的年份。

年        未清金额
2010      6,682,318.11
2009      364,477,477


月         未清金额
3-2010     71,534.1
4-2010     15,274,441.1
3-2011     15,274,441.1


季度        未清金额
1-2010     71,534.1
2-2010     15,274,441.1
3-2010     15,274,441.1

未清余额为(按分组条件)得到的总计金额,其中季度那按1-3为第一季度以此划分


这些全在一个表中,请各位虾帮小弟我想想办法,

谢谢了!

20 个解决方案

#1


数据挖掘Data Mining

#2


引用 1 楼 ricercar 的回复:
数据挖掘Data Mining


小弟刚学SQL不久,能细说一下吗?

#3


groupby  sum
到SQL版去问吧

#4


Sql 中如何按天、周、月、季度、年 进行分组查询

如下格式:  
注:要考虑不同的年份。

年 未清金额
2010 6,682,318.11
2009 364,477,477


月 未清金额
3-2010 71,534.1
4-2010 15,274,441.1
3-2011 15,274,441.1


季度 未清金额
1-2010 71,534.1
2-2010 15,274,441.1
3-2010 15,274,441.1

未清余额为(按分组条件)得到的总计金额,其中季度那按1-3为第一季度以此划分


这些数据全在一个表中,怎么查啊!!!!

请各位大虾帮帮忙啊!!

#5


请各位大虾帮帮忙啊!!

很急啊!!!

顶!!

#6


select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' from Home_Comment_t 
group by year(CreateTime)

#7


select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' from table  
group by year(CreateTime)

#8



SELECT sum(QTY) AS MMQTY
Group by MM,YY

#9


引用 7 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' ……

   那个季度? 顶了……

#10


引用 6 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),y……

select sum(未清金额),DATEPART(week,CreateTime) '周' from table   
group by DATEPART(week,CreateTime)

#11


如果有多个字段,

比如

 未清总计   总盈利     总损失    已清算总计



引用 7 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' ……



7 楼 echo0808    只能得到虚拟表,,如何把虚拟表的值取出来呢

#12


顶 ……

#13


我回去给你写  现在上班不方便

#14


那个季度,可以把那几个月的加起来么

#15


引用 6 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),y……

  顶 …… 
   如果还要取得那每个id列及其它列的值呢?? 

#16


呵呵 等sql高手

#17


select sum(amount)amt,datepart(yyyy,voucherdate) nian,datepart(month,voucherdate) mon from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate),datepart(mm,voucherdate)
select sum(amount)amt,datepart(yyyy,voucherdate) nian,datepart(qq,voucherdate) qua from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate),datepart(qq,voucherdate)
select sum(amount)amt,datepart(yyyy,voucherdate) mon from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate)

#18


select sum(amount)amt,cast(year(voucherdate) as varchar)+'-'+cast(month(voucherdate) as varchar) mon from dbo.t_OnAccountRelation group by year(voucherdate),month(voucherdate)
其他同上

#19


这是问题的标准数据在这里    http://download.csdn.net/source/2374819

请大家下载下来,帮帮忙,,急急急,以经有二天了!!

谢谢各大虾!!

#20


ding

#1


数据挖掘Data Mining

#2


引用 1 楼 ricercar 的回复:
数据挖掘Data Mining


小弟刚学SQL不久,能细说一下吗?

#3


groupby  sum
到SQL版去问吧

#4


Sql 中如何按天、周、月、季度、年 进行分组查询

如下格式:  
注:要考虑不同的年份。

年 未清金额
2010 6,682,318.11
2009 364,477,477


月 未清金额
3-2010 71,534.1
4-2010 15,274,441.1
3-2011 15,274,441.1


季度 未清金额
1-2010 71,534.1
2-2010 15,274,441.1
3-2010 15,274,441.1

未清余额为(按分组条件)得到的总计金额,其中季度那按1-3为第一季度以此划分


这些数据全在一个表中,怎么查啊!!!!

请各位大虾帮帮忙啊!!

#5


请各位大虾帮帮忙啊!!

很急啊!!!

顶!!

#6


select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' from Home_Comment_t 
group by year(CreateTime)

#7


select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' from table  
group by year(CreateTime)

#8



SELECT sum(QTY) AS MMQTY
Group by MM,YY

#9


引用 7 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' ……

   那个季度? 顶了……

#10


引用 6 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),y……

select sum(未清金额),DATEPART(week,CreateTime) '周' from table   
group by DATEPART(week,CreateTime)

#11


如果有多个字段,

比如

 未清总计   总盈利     总损失    已清算总计



引用 7 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from table
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from table
group by month(CreateTime)
go
select sum(未清金额),year(CreateTime) '年' ……



7 楼 echo0808    只能得到虚拟表,,如何把虚拟表的值取出来呢

#12


顶 ……

#13


我回去给你写  现在上班不方便

#14


那个季度,可以把那几个月的加起来么

#15


引用 6 楼 echo0808 的回复:
select sum(未清金额),day(CreateTime) '日' from Home_Comment_t 
group by day(CreateTime)
go
select sum(未清金额),month(CreateTime) '月' from Home_Comment_t 
group by month(CreateTime)
go
select sum(未清金额),y……

  顶 …… 
   如果还要取得那每个id列及其它列的值呢?? 

#16


呵呵 等sql高手

#17


select sum(amount)amt,datepart(yyyy,voucherdate) nian,datepart(month,voucherdate) mon from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate),datepart(mm,voucherdate)
select sum(amount)amt,datepart(yyyy,voucherdate) nian,datepart(qq,voucherdate) qua from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate),datepart(qq,voucherdate)
select sum(amount)amt,datepart(yyyy,voucherdate) mon from dbo.t_OnAccountRelation group by datepart(yyyy,voucherdate)

#18


select sum(amount)amt,cast(year(voucherdate) as varchar)+'-'+cast(month(voucherdate) as varchar) mon from dbo.t_OnAccountRelation group by year(voucherdate),month(voucherdate)
其他同上

#19


这是问题的标准数据在这里    http://download.csdn.net/source/2374819

请大家下载下来,帮帮忙,,急急急,以经有二天了!!

谢谢各大虾!!

#20


ding

#21