2015-12-08 22 views
1

我有一個查詢返回按用戶分組的數據庫中「分鐘工作」列的總和。有沒有辦法在相同的查詢中進一步減少總和。例如工作分鐘的總和,其中費用爲零,費用爲1等。Symfony sql獲取查詢的子和

這是否需要子查詢?是否有可能只寫多個選擇語句?這是我目前的查詢。

$repository->createQueryBuilder('w') 
->select('sum(w.minutesWorked) as Total_Worked,w, u') 
->join('w.user','u') 
->groupBy('w.user') 

任何幫助正確的方式來接近這將不勝感激。

回答

0

只需按費用分組,並且總和必須按需要工作。

select sum(w.minutesWorked), w.charge,u.id from table1 w 
INNER JOIN user u on u.id = w.idUser 
GROUP BY u.id, w.charge ; 

如果你需要一個特定電荷值只是使用其中

WHERE w.charge in (0,1,2,3) 

我希望這可以幫助您。

+0

謝謝,這不是我之後的解決方案,因爲我需要總數和總數的一些變化。但它仍然有幫助。 – user3248331