2013-02-23 46 views
1

我正在编写一些关于某些销售的报告,我设法获得了一周中销售额的总和,但是我需要进一步缩小范围,我需要获得每周销售额的总和,这是在13:00之后完成的。如何在每天某个小时后的几天内获取数据?

这是用于获取每星期

SELECT 
sum(ammount), datename (weekday,sale_date) 
FROM SALES where sale_date > '2012-01-01 00:00:00' 
group by datename (weekday,sale_date) 

回答

2

您可以为“后13:00”添加一个条件到where条款:

where sale_date > '2012-01-01 00:00:00' 
     and datepart(hour, sale_date) >= 13 
+0

给出这个结果,并且问<13,然后把它加到前面,我得到一个远大于原始查询的总和(ammount)。怎么可能? – 2013-02-23 19:51:15

+0

每日销售额= 13点前的销售量+ 13点以后的销售量。如果你得到不同的结果,你可能会使用错误的查询。 – Andomar 2013-02-23 19:53:57

+0

解决了它,我周六意外地阅读了销售情况,并在周一补充说,非常感谢! – 2013-02-23 19:54:53

1

的日销售额的总和为什么不使用的DATEPARThh部分的代码?

SELECT Sum(ammount), 
     Datename (weekday, sale_date) 
FROM sales 
WHERE sale_date > '2012-01-01 00:00:00' 
     AND Datepart(hh, sale_date) >= 13 
GROUP BY Datename (weekday, sale_date) 
+0

,我怎么可以添加此在where子句? – 2013-02-23 19:52:01

+0

@CarlosSanchez看到我的更新。 – Kermit 2013-02-23 19:53:18

+0

谢谢,当然你的回答也是对的,我只是给了Andomar公认的答案,因为他发布的速度更快,并准备好完整的答案。 – 2013-02-23 20:31:40

相关问题