1

私は以下に言及した表を持っています。重複を避けて合計結果を得る必要があります。以下に言及した結果を得る方法について、誰でも支援や提案を提供できますか?

ID      name    Total   Used
24     John     5        2
24     John     10       6
27     Peter    20       0
27     Peter    20       5

結果は次のようになります

ID      name    Total   Used
24     John     15       8
27     Peter    40       5
4

6 に答える 6

9

SUM()2つの列で使用するだけでよいようです。GROUP BYID と名前にも a を使用します

SELECT id, name, sum(total) All_total, sum(used) All_used
FROM yourtable
GROUP BY id, name

SQL Fiddle with Demoを参照してください

このGROUP BYフィールドには、選択している集計関数に含まれていないその他の列を含める必要があるため、この例では、 と の両方idnameに含めますGROUP BY

編集#1クエリは次のようになります。

SELECT [ID] , name, sum([Total]), sum([Used]), [GUID] 
FROM [table].[dbo].[vw_data] 
GROUP BY [ID], [name], [GUID] 
于 2012-08-29T12:08:51.207 に答える
1
select sum(Total), sum(Used), ID, name
from table
group by ID, name;
于 2012-08-29T12:08:59.333 に答える
0

この問題の MySql 構文:

CREATE TABLE DUPLICATE (ID,NAME, TOTAL, USED);

INSERT INTO DUPLICATE VALUES(24,'John',5,2);
INSERT INTO DUPLICATE VALUES(24,'John',10,6);
INSERT INTO DUPLICATE VALUES(27,'Peter',20,0);
INSERT INTO DUPLICATE VALUES(27,'Peter',20,5);

SELECT ID, NAME, SUM(TOTAL), SUM(USED) FROM DUPLICATE GROUP BY ID, NAME;
于 2012-08-29T12:14:04.513 に答える
0
select ID,      name,   sum( Total,),  sum( Used)
from  table 
group by Id,name;
于 2012-08-29T12:10:05.667 に答える
0

これを試して:

select id,name, sum(Total),sum(used)
from tab
group by id,name 
于 2012-08-29T12:10:06.790 に答える
0
SELECT id, name, sum(total) total, sum(used) used  from table GROUP BY id, name
于 2012-08-29T12:10:26.273 に答える