在 SQL 查询中使用 SUM

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/9574721/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-01 14:40:46  来源:igfitidea点击:

Using SUM in an SQL query

sql

提问by Monty

I'm trying to do a query where it adds up the totals for the orders from each customer.

我正在尝试做一个查询,它将每个客户的订单总数相加。

I have tried a few different ways but I am not sure the right way to do it.

我尝试了几种不同的方法,但我不确定正确的方法。

I've tried...

我试过了...

SELECT *
FROM Orders
SUM(Total) as Totals
COUNT(OrderID) as OrderAmt
GROUP BY CustomerID, OrderAmt, ShipName, Totals

I want to get this result....

我想得到这个结果......

=====================================
|CustomerID|Orders |ShipName|Total  |
|==========|=======|========|=======|
|3334      |3      |Joe Blow|1100.00|
|----------|-------|--------|-------|
|114       |2      |Steve   |280.00 |
|----------|-------|--------|-------|
|1221      |1      |Sue     |250.00 |
|----------|-------|--------|-------|
|3444      |1      |Bob     |22.00  |
=====================================

From this table...

从这张表...

|===================================|
|CustomerID|OrderID|ShipName|Total  |
|==========|=======|========|=======|
|3334      |232    |Joe Blow|400.00 |
|----------|-------|--------|-------|
|3334      |234    |Joe Blow|500.00 |
|----------|-------|--------|-------|
|3334      |231    |Joe Blow|200.00 |
|----------|-------|--------|-------|
|114       |235    |Steve   |250.00 |
|----------|-------|--------|-------|
|114       |239    |Steve   |30.00  |
|----------|-------|--------|-------|
|1221      |244    |Sue     |250.00 |
|----------|-------|--------|-------|
|3444      |632    |Bob     |22.00  |
|===================================|

What would be the correct SQL statement for this.

什么是正确的 SQL 语句。

回答by Sean Carpenter

Sumand countcan be used to get the result you want:

Sum并且count可以用来得到你想要的结果:

select CustomerID, count(*) as Orders, ShipName, sum(Total) as Total
from Table
group by CustomerID, ShipName
order by count(*) desc;

回答by Thit Lwin Oo

select CustomerID, count(OrderID) Orders, ShipName, sum(Total) Total
from Order_TAB
group by CustomerID, ShipName