🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
Introduction
In this chapter, we will learn how to use the ORDER BY clause in SQL to sort the results of a query. The ORDER BY clause is used to sort the result set of a query by one or more columns. This chapter will cover the syntax, usage, and provide examples to help you understand how to use the ORDER BY clause effectively.
What is the ORDER BY Clause?
The ORDER BY clause is used to sort the result set of a query in ascending or descending order based on one or more columns. By default, the ORDER BY clause sorts the data in ascending order. You can specify the sorting order for each column individually.
Syntax for ORDER BY
Basic Syntax
SELECT column1, column2, ...
FROM table_name
ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;
column1, column2, ...: The columns by which you want to sort the result set.table_name: The name of the table from which you want to retrieve data.ASC: Sorts the column in ascending order (default).DESC: Sorts the column in descending order.
Example
Assume we have a table named employees:
SELECT first_name, last_name, email
FROM employees
ORDER BY last_name ASC;
This command retrieves the first_name, last_name, and email columns from the employees table and sorts the results by last_name in ascending order.
Step-by-Step Example
1. Create a Sample Table
First, we will create a sample tables - employees and departments.
CREATE TABLE departments (
department_id INT PRIMARY KEY,
department_name VARCHAR(50)
);
CREATE TABLE employees (
id INT PRIMARY KEY AUTO_INCREMENT,
first_name VARCHAR(50),
last_name VARCHAR(50),
email VARCHAR(100),
department_id INT,
salary DECIMAL(10, 2)
);
2. Insert Sample Data
INSERT INTO departments (department_id, department_name)
VALUES
(1, 'HR'),
(2, 'Finance'),
(3, 'IT');
INSERT INTO employees (first_name, last_name, email, department_id, salary)
VALUES
('Ramesh', 'Kumar', 'ramesh.kumar@example.com', 1, 50000),
('Sita', 'Patel', 'sita.patel@example.com', 2, 60000),
('Arjun', 'Singh', 'arjun.singh@example.com', 1, 55000),
('Priya', 'Sharma', 'priya.sharma@example.com', 2, 62000),
('Ramesh', 'Kumar', 'ramesh.kumar2@example.com', 3, 50000);
3. Sort Results in Ascending Order
To sort the results by last_name in ascending order:
SELECT first_name, last_name, email
FROM employees
ORDER BY last_name ASC;
Output
| first_name | last_name | |
|---|---|---|
| Ramesh | Kumar | ramesh.kumar@example.com |
| Ramesh | Kumar | ramesh.kumar2@example.com |
| Sita | Patel | sita.patel@example.com |
| Priya | Sharma | priya.sharma@example.com |
| Arjun | Singh | arjun.singh@example.com |
4. Sort Results in Descending Order
To sort the results by last_name in descending order:
SELECT first_name, last_name, email
FROM employees
ORDER BY last_name DESC;
Output
| first_name | last_name | |
|---|---|---|
| Arjun | Singh | arjun.singh@example.com |
| Priya | Sharma | priya.sharma@example.com |
| Sita | Patel | sita.patel@example.com |
| Ramesh | Kumar | ramesh.kumar2@example.com |
| Ramesh | Kumar | ramesh.kumar@example.com |
5. Sort by Multiple Columns
You can sort the result set by multiple columns. For example, to sort by department_id in ascending order and then by last_name in descending order:
SELECT first_name, last_name, email, department_id
FROM employees
ORDER BY department_id ASC, last_name DESC;
Output
| first_name | last_name | department_id | |
|---|---|---|---|
| Arjun | Singh | arjun.singh@example.com | 1 |
| Ramesh | Kumar | ramesh.kumar@example.com | 1 |
| Priya | Sharma | priya.sharma@example.com | 2 |
| Sita | Patel | sita.patel@example.com | 2 |
| Ramesh | Kumar | ramesh.kumar2@example.com | 3 |
Using ORDER BY with Aliases
If you use column aliases in your SELECT statement, you can also use these aliases in the ORDER BY clause.
Example
SELECT first_name AS fname, last_name AS lname, email
FROM employees
ORDER BY lname ASC;
Output
| fname | lname | |
|---|---|---|
| Ramesh | Kumar | ramesh.kumar@example.com |
| Ramesh | Kumar | ramesh.kumar2@example.com |
| Sita | Patel | sita.patel@example.com |
| Priya | Sharma | priya.sharma@example.com |
| Arjun | Singh | arjun.singh@example.com |
Using ORDER BY with Expressions
You can also use expressions in the ORDER BY clause.
Example
To sort by the length of the last_name:
SELECT first_name, last_name, email
FROM employees
ORDER BY LENGTH(last_name) ASC;
Output
| first_name | last_name | |
|---|---|---|
| Sita | Patel | sita.patel@example.com |
| Ramesh | Kumar | ramesh.kumar@example.com |
| Ramesh | Kumar | ramesh.kumar2@example.com |
| Arjun | Singh | arjun.singh@example.com |
| Priya | Sharma | priya.sharma@example.com |
Conclusion
The ORDER BY clause is used for sorting the results of your SQL queries. This chapter covered the basic syntax, sorting in ascending and descending order, sorting by multiple columns, using aliases, and using expressions in the ORDER BY clause. Understanding how to use the ORDER BY clause effectively will enhance your ability to manage and analyze your database data.
My Top and Bestseller Udemy Courses. The sale is going on with a 70 - 80% discount. The discount coupon has been added to each course below:
Build REST APIs with Spring Boot 4, Spring Security 7, and JWT
[NEW] Learn Apache Maven with IntelliJ IDEA and Java 25
ChatGPT + Generative AI + Prompt Engineering for Beginners
Spring 7 and Spring Boot 4 for Beginners (Includes 8 Projects)
Available in Udemy for Business
Building Real-Time REST APIs with Spring Boot - Blog App
Available in Udemy for Business
Building Microservices with Spring Boot and Spring Cloud
Available in Udemy for Business
Java Full-Stack Developer Course with Spring Boot and React JS
Available in Udemy for Business
Build 5 Spring Boot Projects with Java: Line-by-Line Coding
Testing Spring Boot Application with JUnit and Mockito
Available in Udemy for Business
Spring Boot Thymeleaf Real-Time Web Application - Blog App
Available in Udemy for Business
Master Spring Data JPA with Hibernate
Available in Udemy for Business
Spring Boot + Apache Kafka Course - The Practical Guide
Available in Udemy for Business
Comments
Post a Comment
Leave Comment