我懂了:
SELECT `cuenta`.`reservaId`, sum(`cuenta`.`tarifaTotal`)
FROM `check`,`cuenta`,`comanda`,`reserva`
WHERE `comanda`.`id`=`cuenta`.`idComanda` AND `comanda`.`tipo`=0
GROUP BY `cuenta`.`reservaId` ORDER BY `check`.`id`
问题是由于我应该获得的119上的第一个“ reservaID”,我得到了约10000000。
当我使用此代码时,它可以工作,但仅适用于第一个“ reservaID”空间:
SELECT `cuenta`.`reservaId`, sum(`cuenta`.`tarifaTotal`)
FROM `check`,`reserva`,`cuenta`,`comanda`
WHERE `cuenta`.`reservaId`=`reserva`.`id` AND `cuenta`.`idComanda`=`comanda`.`id` AND `check`.`idReserva`=`reserva`.`id` AND `comanda`.`tipo`=0
GROUP BY `cuenta`.`reservaId`
ORDER BY `check`.`id`
表格:
检查:id,reservaID
储备:id,idPersona,idEmpresa等。
cuenta:reservaID,idComanda,Tarifatotal(此字段就像迷你账单,因此“ tarifatotal”是每张迷你账单的价格)
comanda:用于描述服务类型的ID,名称,提示(或类型,可以为0、1,2或3),例如饮料,餐厅,服务等
请帮忙,我想显示每个“ reservaID”的所有“ sum”。
最佳答案
尝试这个:
SELECT cuenta.reservaId, sum(cuenta.tarifaTotal) FROM check
JOIN reserva
ON reserva.id = check.idReserva
JOIN cuenta
ON cuenta.reservaId = reserva.id
JOIN comanda
ON comanda.id = cuenta.idComanda
WHERE comanda.tipo = 0
GROUP BY cuenta.reservaId
ORDER BY check.id;