Saturday 13 December 2014

SQL HAVING

SQL > SQL Commands > Having
Another thing people may want to do is to limit the output based on the corresponding sum (or any other aggregate functions). For example, we might want to see only the stores with sales over $1,500. Instead of using the WHERE clause in the SQL statement, though, we need to use the HAVING clause, which is reserved for aggregate functions. The HAVING clause is typically placed near the end of the SQL statement, and a SQL statement with the HAVINGclause may or may not include the GROUP BY clause. The syntax for HAVING is,
SELECT ["column_name1"], Function("column_name2")
FROM "table_name"
[GROUP BY "column_name1"]
HAVING (arithmetic function condition);
Note: We may select zero, one, or more columns in addition to the aggregate function. If we select zero column, there is no need for the GROUP BY clause.
In our example, table Store_Information,
Table Store_Information
Store_NameSalesTxn_Date
Los Angeles1500Jan-05-1999
San Diego250Jan-07-1999
Los Angeles300Jan-08-1999
Boston700Jan-08-1999
we would type,
SELECT Store_Name, SUM(Sales)
FROM Store_Information
GROUP BY Store_Name
HAVING SUM(Sales) > 1500;
Result:
Store_NameSUM(Sales)
Los Angeles1800

No comments:

Post a Comment