2
有一個帶有datetime_in,datetime_out,card_id,group的表。知道我要在以下事項輸出:sql查詢分爲15分鐘
group ; date ; quarterTime ; persons_in ; hours
group1 ; 17-02-2010 ; 00:00 - 00:15 ; 0 ; 0
group1 ; 17-02-2010 ; 00:15 - 00:30 ; 0 ; 0
group1 ; 17-02-2010 ; 00:30 - 00:45 ; 0 ; 0
~etc
group1 ; 17-02-2010 ; 13:00 - 12:15 ; 334 ; 1483
end then the same for all the groups starting with 00:00 until 23:45
所以對於每一天的quearter我想有一個記錄,由小組,日期分組(天數)和quarterTime。然後在persons_in中,我希望在該季度內的記錄計數,以及以小時爲單位,直到當前季度結束時,總共有多少個人工作小時。所以每天只能得到更高和更高的人數,而只有人數在該季度內。所以我的問題是,我現在有一個非常骯髒的C#腳本來做這件事,因爲我想運行的最優化只有一個查詢。
我不介意使用存儲過程,但由於我不是很擅長sql,我更喜歡T-SQL。
任何人有想法如何做到這一點?例子?
15分鐘分組部分是[SQL - 將開始/結束時間分成15分鐘記錄]的副本(http://stackoverflow.com/questions/2921760/sql-break-a-start-end-time -INTO 15分鐘,記錄)。運行總計部分是[在SqlServer中計算運行總計]的副本(http://stackoverflow.com/questions/860966/calculate-a-running-total-in-sqlserver)。 – GSerg 2011-12-19 11:47:08
謝謝,ik可以使用SqlServer中的Calculate a Running Total,但15分鐘內的開始/結束時間與我想要的不同。 – Eijso 2011-12-19 11:52:58