У меня есть система баллов, и я пытаюсь сложить их вместе.Они находятся на двух разных таблицах, и я использую подзапрос, чтобы получить обе суммы и сложить их вместе.Оба подзапроса работают сами по себе, но их сложение дает мне гораздо большее число, чем предполагалось.
Вот мой запрос:
SELECT (SUM(tbl_achieve.achieve_points)+SUM(tbl_assign.assign_points))
FROM
(SELECT DISTINCT(tbl_achievements.achieve_id), tbl_achievements.achieve_points FROM tbl_achievements INNER JOIN tbl_studentachieve ON tbl_studentachieve.achieve_id = tbl_achievements.achieve_id AND tbl_studentachieve.student_ID = 8 AND tbl_achievements.achieve_cat = "main" ) as tbl_achieve,
(SELECT DISTINCT(tbl_assignments.assign_id), assign_points FROM tbl_assignments INNER JOIN tbl_studentassign ON tbl_studentassign.assign_id = tbl_studentassign.assign_id WHERE tbl_assignments.assign_cat = "main" AND tbl_studentassign.student_id = 8 AND tbl_studentassign.assign_status = "submitted") as tbl_assign
Я думаю, что проблема в том,что он объединяет обе строки.Поэтому вместо 2 строк по 10 точек у меня есть 10 строк по 10 точек из-за номера другой таблицы.
Есть идеи, чего мне не хватает?