Symfony sql获取查询的子总和

时间:2015-12-08 08:43:29

标签: php mysql symfony doctrine-orm

我有一个查询,它返回数据库中“分钟工作时间”列的总和,该列按用户分组。有没有办法在同一个查询中进一步减少总和。例如,在电荷为零,电荷为1等时工作的分钟总和。

这需要子查询吗?是否可以只写多个select语句?这是我当前的查询。

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

任何帮助以正确的方式解决这个问题都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

也可以按收费分组,总和必须按照您的需要运作。

public Person getPerson(String find, Person[] l) {
    for (int i = 0; i < l.length; i++) {
        Person p = l[i];
        String a = p.age;
        String fn = p.firstname;
        String ln = p.lastname;
        if (find.equals(a) || find.equals(fn) || find.equals(ln)) {
            return p;
        }
    }
    return null; //if the person does not exist in the list
}

如果您需要特定的充电值,请使用

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 ;

我希望这对你有所帮助。