1

我有多行数据都共享相同的公司 ID。

有没有办法使用 SQL Server Management Studio 2005 对所有金额进行“汇总”,以便为每个公司 ID 提供一行数据?

例如我目前有以下数据......

Company_Name   Company_ID   Amount
Company 6         10024   120
Company 6         10024   569
Company 6         10024    53
Company 6         10024   100
Company 6         10024   564
Company 7         10638  9500
Company 7         10638   105
Company 7         10638   624

我想尝试得到的是......

Company_ Name   Company_ID     Amount 
Company 6        10024         1406
Company 7        10638        10229

有没有办法做到这一点?

任何指出我正确方法的建议都会很棒。

谢谢,

4

8 回答 8

8
SELECT Company_Name, Company_ID, SUM(Amount) 
FROM TableName GROUP BY Company_Name, Company_ID
于 2012-03-07T11:30:18.883 回答
3
SELECT Company_Name, Company_ID, sum(Amount)
FROM your table
GROUP BY Company_Name, Company_ID
于 2012-03-07T11:32:18.700 回答
3

试试这个;

SELECT Company_Name, Company_ID, SUM(Amount) AS Amount
FROM Companies
GROUP BY Company_Name, Company_ID;

演示在这里

于 2012-03-07T11:33:27.077 回答
2
SELECT Company_Name, Company_ID, sum(Amount)
FROM table
group by Company_Name, Company_ID
于 2012-03-07T11:30:58.790 回答
1

您需要使用GROUP BYSUM功能。

SELECT Company_Name, Company_ID, SUM(Amount) AS TOTAL_AMOUNT
FROM myTable
GROUP BY Company_Name, Company_ID
于 2012-03-07T11:31:00.630 回答
1
WITH T ( Company_Name, Company_ID, Amount )
     AS
     (
      SELECT 'Company 6', '10024', 120 UNION ALL
      SELECT 'Company 6', '10024', 569 UNION ALL
      SELECT 'Company 6', '10024', 53 UNION ALL
      SELECT 'Company 6', '10024', 100 UNION ALL
      SELECT 'Company 6', '10024', 564 UNION ALL
      SELECT 'Company 7', '10638', 9500 UNION ALL
      SELECT 'Company 7', '10638', 105 UNION ALL
      SELECT 'Company 7', '10638', 624 
     )
SELECT DISTINCT Company_Name, Company_ID, 
       SUM(Amount) OVER (PARTITION BY Company_ID) AS total_amount
  FROM T;
于 2012-03-07T12:06:16.853 回答
0

为我工作:

    select Company_Name   , Company_ID   ,sum(Amount) as 'Amount' from Company group by 
Company_Name,Company_ID   ;
于 2019-04-17T14:28:04.583 回答
0
create table #tempTable
(
    Id bigint,
    Title varchar(100),
    Amount money
)
insert into #TempTable(Title,Id,Amount)
Values
('Company 6',         10024,   120),
('Company 6',         10024,   569),
('Company 6',         10024,    53),
('Company 6',         10024,   100),
('Company 6',         10024,   564),
('Company 7',         10638,  9500),
('Company 7',         10638,   105),
('Company 7',         10638,   624)


select Title, Sum(Amount)Amount from #TempTable
group by Title,ID

drop Table #TempTable
于 2019-12-21T20:22:03.340 回答