🔢 SQL ORDER BY Clause – How to Sort Your Query Results Like a Pro
Want your SQL query results in a specific order—like highest salary first or names alphabetically?
TheORDER BYclause is your go-to tool.
Let’s learn how to sort data in ascending and descending order usingORDER BYwith real-world examples.
đź§ľ What is SQL ORDER BY?
The ORDER BY clause is used in SQL to sort the result set of a SELECT query based on one or more columns.
You can sort:
- In ascending order (default)
- In descending order using the
DESCkeyword
📚 SQL ORDER BY Syntax
SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC | DESC], column2 [ASC | DESC], ...;
âś… Example 1: Sort by One Column
Let’s say you have an employees table and want to list them by salary:
SELECT first_name, last_name, salary
FROM employees
ORDER BY salary;
📌 By default, the data is sorted in ascending order (low to high).
đź”˝ Example 2: Sort in Descending Order
Want highest salaries first?
SELECT first_name, last_name, salary
FROM employees
ORDER BY salary DESC;
🔢 Example 3: Sorting by Multiple Columns
You can sort by one column, and if there’s a tie, sort by another:
SELECT first_name, last_name, department, salary
FROM employees
ORDER BY department ASC, salary DESC;
đź’ˇ This sorts alphabetically by department, and then by salary (highest to lowest) within each department.
🆚 ORDER BY vs GROUP BY
ORDER BY | GROUP BY |
|---|---|
| Sorts rows | Groups rows |
| Affects final result display | Used with aggregate functions |
| Optional in SELECT | Often required with COUNT, SUM, AVG |
đź§ Real-World Use Case
Use Case: Display top 5 most expensive products in descending order.
SELECT product_name, price
FROM products
ORDER BY price DESC
LIMIT 5;
⚠️ Tips & Best Practices
âś… Use ORDER BY after WHERE, GROUP BY, and HAVING clauses
âś… Avoid sorting unnecessarily in large datasets for performance reasons
âś… Always specify sort direction explicitly (ASC or DESC) for clarity
âś… Use column alias in ORDER BY for cleaner queries
đź§Ş Practice Challenge
Question: Get a list of customers sorted by city (A–Z), and within each city, by their last name (Z–A).
SELECT customer_id, first_name, last_name, city
FROM customers
ORDER BY city ASC, last_name DESC;
📝 Final Thoughts
The ORDER BY clause in SQL is essential for organizing your query results into meaningful reports. Whether you’re:
- Building dashboards,
- Creating client reports, or
- Preparing data for analytics,
ORDER BY ensures your data is sorted and presentable.
🎯 Practice different combinations of sort orders to understand how they impact your data’s readability and usefulness.

