zz1433
zz1433

Reputation: 3586

Aggregate function and other columns

Is it possible for a SQL query to return some normal columns and some aggregate ones?

like :

Col_A | Col_B | SUM
------+-------+------
   5  |   6   |  7

Upvotes: 3

Views: 9000

Answers (5)

eKek0
eKek0

Reputation: 23289

You should use the group by statement.

The GROUP BY statement is used in conjunction with the aggregate functions to group the result-set by one or more columns.

For example:

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name

You can see a complete example here.

Upvotes: 7

Charles Bretana
Charles Bretana

Reputation: 146499

You can show ordinary columns or expressions based on ordinary columns, but only if they are included in the set of columns/expressions you are agregating over ( what is listed in Group By clause ).

Upvotes: 0

daremon
daremon

Reputation: 4884

Yes of course. Read on GROUP BY and aggregate functions. e.g.

SELECT col1, col2, SUM(col3) 
FROM table 
GROUP BY col1, col2

Upvotes: 1

Alex Martelli
Alex Martelli

Reputation: 881645

If you GROUP BY some fields, you can show those fields, and aggregate others; e.g.:

SELECT colA, colB, SUM(colC)
FROM TheTable
GROUP BY colA, colB

aggregation can be by SUM, MIN, MAX, etc.

Upvotes: 0

Ray
Ray

Reputation: 1585

Yes, add them to GROUP BY clause.

Upvotes: 0

Related Questions