2012-07-24 30 views
0

我試圖避免涉及這個查詢後的PHP。我有保存員工的名單,他們在幾秒鐘內,日期等多少時間的工作......我希望有一個表:如何總結SQL中的分組結果

select SUM(`seconds`) between date A and date B group by WEEK(`date`) 

,這將使我對每個星期的結果,但現在我想通過在整個結果集上使用AVG(),每週工作的平均秒數。你怎麼能在一個查詢中完成這件事?

+0

怎麼樣:'總和(秒)/總和(員工)' – alfasin 2012-07-24 03:56:23

+0

爲什麼我會以秒爲單位劃分員工? – 2012-07-24 03:57:42

+0

您能提供一個數據和預期結果的小例子嗎? – 2012-07-24 03:58:50

回答

1

這將這樣的伎倆:

Select AVG(sum_seconds) from (select SUM('seconds') as sum_seconds between date A and date B group by WEEK('date')) as a 
+0

在查詢內查詢可能是答案... – 2012-07-24 03:59:48

+0

它工作嗎?讓我知道,因爲我沒有數據/沒有測試過這個。只是寫出來,所以可能會出現語法錯誤。 – snowguy 2012-07-24 04:00:53

+0

我不打算使用該代碼,但我喜歡這個概念。我希望有一種方法可以做到這一點。 – 2012-07-24 04:01:45

2

您可以使用類似這樣

select sum(total) from (select SUM(`seconds`) as total between date A and date B group by WEEK(`date`)) as tbl1 

希望它能幫助