2016-05-30 5 views
0

У меня есть требование: необходимзапрос, чтобы найти сумму значений для дублированного идентификатора в MySQL

ID   Quantity 
1    5 
1    4 
1    2 
1    4 
2    1 
2    2 
2    3 
3    1 
3    3 
3    2 

Выход:

ID   Quantity 
1    15 
2    6 
3    6 

Я пробовал ниже запрос на MySQL, но не в состоянии получить соответствующий результат.

SELECT 
a.id, sum(b.Quantity) 
FROM 
​table_name a 
INNER JOIN 
​table_name b 
ON a.id = b.id 
​ ​group by 
a.id, b.Quantity 
+0

Что вы подразумеваете под «идентификатором дубликата». Вы имеете в виду, игнорируете те, которые происходят один раз, и суммируют только те, которые дублируются? – doug65536

ответ

0

Вам не нужно никакого join. Просто попробуйте:

select id,sum(quantity) from table_name group by id 
0

Используйте GROUP BY положение наряду с sum() как запрос

ценам ниже
select ID, sum(Quantity) FROM table_name GROUP BY ID; 
+0

Вопрос уже содержит групповое предложение с суммой, как это отвечает на вопрос? – doug65536

+0

Вы должны добавить соответствующий код и пояснить ответ. – Sandeep

0

Просто удалите b.Quantity из group by заявления. SQL fiddle

SELECT 
a.id, sum(b.Quantity) 
FROM 
​table_name a 
INNER JOIN 
​table_name b 
ON a.id = b.id 
​ ​group by  
a.id 
Смежные вопросы