如何对具有多对多关系的两个MySQL表中的列求和
我需要检索每个学生的值,如下所示如何对具有多对多关系的两个MySQL表中的列求和,mysql,many-to-many,Mysql,Many To Many,我需要检索每个学生的值,如下所示 student full name | costs | discounts | net Value | payments | remaining 当我尝试 SELECT concat_ws(' ',students.firstname,students.secondname,students.thirdname,students.forthname,students.lastname), students.birthdate,
student full name | costs | discounts | net Value | payments | remaining
当我尝试
SELECT
concat_ws(' ',students.firstname,students.secondname,students.thirdname,students.forthname,students.lastname),
students.birthdate,
sum(costs.value),
sum(discounts.value),
sum(costs.value)-sum(discounts.value),
sum(payments.amount),
sum(costs.value)-sum(discounts.value)-sum(payments.amount)
FROM students
JOIN coststudents
ON coststudents.student_id = students.student_id
JOIN costs
ON costs.cost_id = coststudents.cost_id
JOIN discountstudent
ON discountstudent.student_id = students.student_id
JOIN discounts
ON discounts.id = discountstudent.id
JOIN payments
ON payments.student_id = students.student_id
它只给出一行,与查询不对应。
请提供帮助。将GROUP BY students.student\u id放在代码末尾
编辑:改为使用左连接。否,它获取的数据与我想要获取的数据不符,计算结果完全错误!