UNION ALL с WHERE не суммируется, повторяет два числа - PullRequest
0 голосов
/ 12 октября 2018

Я почти полностью решил свои проблемы с UNION ALL.Только у меня есть проблема с этим кодом:

"SELECT ID, SUM(Goals) AS G FROM
(SELECT  ID, Goals FROM Table1 WHERE ID='8' OR ID='2' UNION ALL 
SELECT ID, Goals FROM Table2 WHERE ID='8' OR ID='2') AS derivedTable
GROUP BY ID"

echo $daten['G']

Этот код должен дать мне цели из ID 8 + ID 2 вместе в сумме.К сожалению, это дает мне сумму целей из таблицы 1 + 2 ID = 8 (например, 20) и сумму целей из таблицы 1 + 2 ID = 2 (например, 40) следующим образом:

2040

Я бы хотел, чтобы этот код отвечал 60, поэтому СУММА таблицы 1 + 2 для ID 2 + 8.Я пытался добавить SUM () ко всем операторам UNION, но это не сработало.Я попытался поставить часть «Где ID» после скобки, но это не сработало.

Есть ли другая возможность?Или я должен полностью изменить код?

...