2013-02-23 99 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

相關問題