如何在mySQL中汇总()与特定ID相关的值?

时间:2016-08-14 18:19:27

标签: mysql join sum

我想在一张桌子上显示学生支付的所有款项。 学生可以属于不止一门课程,所以我需要知道属于每门课程的学费。

I've tried this:

SELECT      usuarios.userID, usuarios.userEmail, usuarios.docVerificada, 
            pagos.cursoID, pagos.pagoMonto,
            SUM(pagos.pagoMonto)

FROM usuarios LEFT JOIN pagos
ON usuarios.userID = pagos.userID

WHERE pagos.estadoPago = 1

GROUP BY usuarios.userEmail

但它输出所有付款,每行一个,但我想根据他们的cursoID对它们进行分组。

这些是涉及的表:

CREATE TABLE pagos (
    pagoID int unsigned not null auto_increment primary key,
    userID int not null,
    cursoID int null,
    estadoPago int(1) not null DEFAULT '0'
    pagoMonto int null
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE usuarios(
    userID int unsigned not null auto_increment primary key,
    userEmail char(50) null
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

这是我获得的实际输出: enter image description here

这些是没有任何分组或总和的结果: enter image description here

预期结果将是:

  

UserID 16 - cursoID 15 - 付款总额23

     

UserID 16 - cursoID 16 - 付款总计77(它应该只合计24,   26和27)

依旧......

0 个答案:

没有答案