SQL Language Reference / Functions |

SUM is an aggregate function that evaluates the sum of the expression over a set of rows . SUM is allowed only on expressions that evaluate to numeric data types.

SUM ( [ DISTINCT | ALL ]Expression)

The DISTINCT and ALL qualifiers eliminate or retain duplicates. ALL is assumed if neither ALL nor DISTINCT is specified. For example, if a column contains the values 1, 1, 1, 1, and 2, SUM(col) returns a greater value than SUM(DISTINCT col).

Only one DISTINCT aggregate expression per
*SelectExpression* is allowed. For
example, the following query is not allowed:

SELECT AVG (DISTINCT flying_time), SUM (DISTINCT miles) FROM Flights

The
*Expression* can contain multiple column references or
expressions, but it cannot contain another aggregate or subquery. It must
evaluate to a built-in numeric data type. If an expression evaluates to NULL,
the aggregate skips that value.

The resulting data type is the same as the expression on which it operates (it might overflow).

-- find all economy seats available: SELECT SUM (economy_seats) FROM Airlines; -- use SUM on multiple column references -- (find the total number of all seats purchased): SELECT SUM (economy_seats_taken + business_seats_taken + firstclass_seats_taken) as seats_taken FROM FLIGHTAVAILABILITY;