Я пытаюсь получить сумму сумм двух разных столбцов из одной таблицы, сгруппированных по пользователям.Проблема в том, что одна из сумм, которую я должен найти, требует дополнительных параметров.
Таблица 1:
userid, fname, lname
Таблица 2:
assigned_to (is = to userid from other table),
est_hours (est = Estimate hours),
act_hours (act = Actual Hours),
completed_date
Я хочу толькоest_hours из записей, которые были помечены как завершенные (путем указания значения в столбце complete_date. act_hours будет пустым, если в поле complete_date пусто)
Проблема с моим запросом заключается в том, что я не получаю правильные значения длясумма act_hours и est_hours.Я думаю, что это связано с вложенным запросом, не совпадающим с правильным идентификатором пользователя.Запрос:
SELECT userid,
fname,
lname,
SUM(act_hours)+(SELECT SUM(est_hours)
from Table2
WHERE completed_date IS NULL) AS total_hours
FROM TABLE2,
TABLE1
WHERE TABLE1.userid = TABLE2.assigned_to
GROUP BY userid;
Я знаю, что мне нужно каким-то образом передать идентификатор пользователя из запроса OUTER во внутренний запрос, чтобы SUM (est_hours) получал только сумму для этого пользователя.
Я продолжаю ходить кругами, и мой мозг болит, поэтому любая помощь приветствуется !!