Now we return to the aggregate
functions. Remember we used the SUM keyword
to calculate the total sales for
all stores? What if we want to
calculate the total sales for each
store? Well, we need to do two
things: First, we need to make
sure we select the store name as
well as total sales. Second, we
need to make sure that all the
sales figures are grouped
by stores.
The corresponding SQL syntax is,
SELECT
"column_name1", SUM("column_name2")
FROM "table_name"
GROUP BY "column_name1"
Let's illustrate using the
following table,
Table Store_Information
| store_name |
Sales |
Date |
| Los Angeles |
$1500 |
Jan-05-1999 |
| San Diego |
$250 |
Jan-07-1999 |
| Los Angeles |
$300 |
Jan-08-1999 |
| Boston |
$700 |
Jan-08-1999 |
We want to find total sales for
each store. To do so, we would key
in,
SELECT store_name, SUM(Sales)
FROM Store_Information
GROUP BY store_name
Result:
store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston> $700
The GROUP
BY keyword
is used when we are selecting
multiple columns from a table (or
tables) and at least one
arithmetic operator appears in theSELECT statement.
When that happens, we need to GROUP
BY all
the other selected columns, i.e.,
all columns except the one(s)
operated on by the arithmetic
operator