繁体   English   中英

SQL select语句,将派生表与JasperReports一起使用,将在几周内恢复我的数据

[英]Sql select statement that will bring back my data in weeks, using derived tables with JasperReports

我当前正在JasperReports Server中运行以下sql语句,以使用派生表恢复数据。

Select count(createddate) as ModulesCreatedDuringPastWeek, 
count(updateddate) as  ModulesUpdatedDuringPastWeek, 
createddate, 
updateddate 
from merchendisingmodule 
group by merchendisingmodule.createddate, merchendisingmodule.updateddate

但是,对数据进行分组时,只能在年,季度,月和日进行。 但是对于我的报告,我需要将数据设为小组周,因此我想知道要添加到代码中需要执行哪些操作。

DATEADD(D,-DATEPART(weekday,createddate)+1,createddate)

我使用这种方法来防止在一年中的过渡问题(在januari的第一天和12月的最后几天中的第53周,将相隔360天的天分组在一起)。 我使用一周的第一天,而不是星期几。 我可以使用这些日期进行分组。 而且,这将确保每个星期有7天,而不是一年的最后一周只有3或4天。

顺便说一句,在此示例中,一周的第一天是星期日。

如果您的日期包含时间,请使用:

CAST(FLOOR(CAST(createddate AS FLOAT)) AS DATETIME)

而不是上面的SYNTAX中的createddate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM