# SQL SUM() Function

## The SQL SUM() Function

The `SUM()` function returns the total sum of a numeric column.

### Example

Return the sum of all `Quantity` fields in the `OrderDetails` table:

SELECT SUM(Quantity)
FROM OrderDetails;
Try it Yourself »

## Syntax

``` SELECT SUM(column_name) FROM table_name WHERE condition;```

## Demo Database

Below is a selection from the OrderDetails table used in the examples:

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40

You can add a `WHERE` clause to specify conditions:

### Example

Return the sum of the `Quantity` field for the product with `ProductID` 11:

SELECT SUM(Quantity)
FROM OrderDetails
WHERE ProductId = 11;
Try it Yourself »

## Use an Alias

Give the summarized column a name by using the `AS` keyword.

### Example

Name the column "total":

SELECT SUM(Quantity) AS total
FROM OrderDetails;
Try it Yourself »

## Use SUM() with GROUP BY

Here we use the `SUM()` function and the `GROUP BY` clause, to return the `Quantity` for each `OrderID` in the OrderDetails table:

### Example

SELECT OrderID, SUM(Quantity) AS [Total Quantity]
FROM OrderDetails
GROUP BY OrderID;
Try it Yourself »

You will learn more about the `GROUP BY` clause later in this tutorial.

## SUM() With an Expression

The parameter inside the `SUM()` function can also be an expression.

If we assume that each product in the `OrderDetails` column costs 10 dollars, we can find the total earnings in dollars by multiply each quantity with 10:

### Example

Use an expression inside the `SUM()` function:

SELECT SUM(Quantity * 10)
FROM OrderDetails;
Try it Yourself »

We can also join the `OrderDetails` table to the `Products` table to find the actual amount, instead of assuming it is 10 dollars:

### Example

Join `OrderDetails` with `Products`, and use `SUM()` to find the total amount:

SELECT SUM(Price * Quantity)
FROM OrderDetails
LEFT JOIN Products ON OrderDetails.ProductID = Products.ProductID;
Try it Yourself »

## Exercise:

Use an SQL function to calculate the sum of all the `Price` column values in the `Products` table.

```SELECT
FROM Products;
```

Start the Exercise

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.