0

我有以下要求:

单个 SQL Server 查询以按小时、每天、每周、每月和每年的数据获取总分。

结果应该是这样的:

thisperiodtotalscore  previousperiodtotalscore  sumtotalscore periodType

符合以下标准:

  • 其中 score 来自表格数据,必须为不同团队的不同成员汇总总得分,
  • 其中 period 可以是每小时、每天、每周、每月和每年,每小时由工作时间定义确定,比如说它可以是任意数量的选定小时数(例如:第一个工作小时、第二个工作小时,等等..)
  • 和每周由工作日定义确定,比如可以是周三到周三,..)
  • 同样适用于月度和年度

如果该期间有空数据,则说明如果是假期/请假,则不应在计数中跳过该特定期间。

笔记:

thisperiodtotalscore(此时段总分可以是用户日期输入的任何时段(每小时、每天、每周、每月、每年)) - 说用户输入的对应周得分,用户日期输入的对应月份得分, .. 同样地

previousperiodtotalscore (上一期总分可以是用户日期输入的任何时期(每小时、每天、每周、每月、每年)) - 比如说用户日期输入的上一周得分、用户日期输入的上个月得分。 。 同样地

sumtotalscore-thisperiodtotalscore和的总和previousperiodtotalscore

periodType- 每小时、每天、每周、每月、每年,基于期间请求类型

并且符合以下标准:

  • 其中 score 来自表格数据,totalscore必须针对不同团队的不同成员进行汇总,
  • 其中 period 可以是每小时、每天、每周、每月和每年,每小时由工作时间定义确定,比如说它可以是任意数量的选定小时数(例如:第一个工作小时、第二个工作小时,等等..)
  • 和每周由工作日定义确定,比如可以是周三到周三,..)
  • 同样适用于每月和每年

如果该期间有空数据,则说明如果是假期/请假,则不应在计数中跳过该特定期间。

这是要求,如果在这种情况下错过了其他可能的情况,也欢迎。

在此先感谢 GravityPush

4

1 回答 1

0

For start, take a look at DimDate in AdventureWorksDW sample. You can have a similar table in your database and write some join queries. I suggest use queries which are dynamically grouped by different columns of DimDate.

于 2011-06-05T16:21:12.503 回答