When we are dealing with huge data, we can not analyse the data by looking into each record. We sort and group the data based on certain variables and understand the data. We use Order By, Group by,Where and Having Clauses to Sort and group the data in SQL.
Following are detailed examples to explain ORDER BY GROUP BY clauses in SQL.
Sorting in SQL:
Order By clause sort the result set from the query (with a where clause) in a specific order using the ORDER BY clause based on specified column(s).
Syntax:
Here is the syntax of Order By clause in SQL.
From tables
Where <condition>
Order By column ASC/DSC;
ASC option sort the data in Ascending order and DSC option sort the selected data in Descending Order.
Example:
Here is the example to sort the data based on the Department variable. It fetches the data from Employee table and sort the data EID,NAME,Salary,Department based on Department.,[code lanuage=”sql”]
SELECT EID,Name,Salary, Department
FROM Employee
ORDER BY Department ASC;
Grouping in SQL:
SQL Group By clause is used to retrieve data grouped according to one or more columns.
Syntax:
Here is the syntax of Group By clause in SQL.
[code lanuage=”sql”] Select columnsFrom tables
GROUP BY column;
Example:
The following example group the data based on Department. It fetches the data from Employee table and sort the data based on Department Variable.[code lanuage=”sql”]
SELECT Department, Sum(Salary)
FROM Employee
GROUP BY Department;
If you want to use Group By with a aggregated function do not use Where Clause, use Having Clause.
The reasons are:
WHERE applies to each and single row and HAVING applies to summarized rows. HAVING clause fetch the data first and then separated according to condition.HAVING is used only with the SELECT statement and WHERE Clause can be used other than Select statement also.WHERE is used before GROUP BY clause, HAVING is used after GROUP BY clause.