SELECT m.col1, SUM(SELECT col5 FROM table WHERE col2 = m.col1)
FROM table AS m
Это не работает. Есть ли какое-либо решение?
Ответ 1
Почему бы вам не сделать это:
SELECT m.col1, (SELECT SUM(col5) FROM table WHERE col2 = m.col1)
FROM table AS m
Ответ 2
да - использование объединений
SELECT m.col1, SUM(j.col5) FROM table AS m
JOIN table AS j ON j.col2 = m.col1 GROUP BY m.col1
Ответ 3
Сумма используется во втором выборе, где мы хотим суммировать столбец.
Col2 может быть неоднозначным столбцом, если такой столбец существует в таблице m.
SELECT
m.col1,
(SELECT SUM(t.col5) FROM table AS t WHERE t.col2 = m.col1) AS sumcol
FROM table AS m