SQL -Structured Query Language - Sql Order By - Ascending Descending Multiple Column Tutorial
To retrieve a record in multiple orders for different columns from the existing created table. Then we can use an ' ORDER BY ' Clause multiple times with ASC or DESC differently depending upon the requirement.
Syntax-
The basic syntax of the ORDER BY statement with ASC / DESC Attribute is given below –
SELECT * FROM
table_name
ORDER BY
column_name1 [ASC / DESC],
column_name2 [ASC / DESC],…,
column_nameN [ASC / DESC];
Here 1st priority will always be given to column_name1, 2nd priority to column_name2, and last priority to column_nameN.
Suppose if the user retrieves a record in ascending order of a name, And there are two or more records with the same name. So for the same name record, he wants to retrieve its age in descending order
For example-
Example 1
SELECT first_name,last_name
FROM
employees
ORDER BY
first_name ASC, last_name DESC;
Here it will retrieve all records from the Employees table in ascending order of a first_name column, and if the record having two or more same first_name. then it will check the last_name, and order it in descending manner.
Example 2
SELECT first_name,last_name
FROM
employees
ORDER BY
last_name DESC, first_name ASC;
Here it will retrieve all records from the Employees table in descending order of a last_name column, and if the record having two or more same last_name. then it will check the first_name, and order it in ascending manner.
In this 'ORDER BY first_name ASC, last_name DESC ' and 'ORDER BY last_name DESC, first_name ASC' both look the same, but both will retrieve data in a different order.
Example 1 and Example 2 will work differently.