# How do you sort data using ORDER BY in SQL?

Source: https://zilliz.com/ai-faq/how-do-you-sort-data-using-order-by-in-sql
Author: zilliz

Sorting data in SQL is accomplished using the `ORDER BY` clause, which allows you to arrange the results returned by a query in a specific order. By default, the sorting is done in ascending order. However, you can specify sorting in descending order if needed. The `ORDER BY` clause is typically placed at the end of a SQL statement, following the `SELECT` statement and any `WHERE` or `GROUP BY` clauses. You can sort by one or multiple columns, and you can also specify the order for each column individually.

To use the `ORDER BY` clause, you first need to identify the column or columns you want to sort by. For example, if you have a table named `employees` and you want to sort the results based on the `last_name` column in ascending order, your SQL query would look like this:

```sql
SELECT * FROM employees
ORDER BY last_name ASC;
```

If you wish to sort the results based on multiple columns, you can do so by separating the column names with commas. For instance, if you not only want to sort by `last_name` but also by `first_name`, you would write:

```sql
SELECT * FROM employees
ORDER BY last_name ASC, first_name ASC;
```

In this case, the results will first be sorted by `last_name`, and if there are employees with the same last name, they will be sorted by `first_name`. Furthermore, you can mix and match sorting orders; for example, if you want `last_name` in ascending order and `first_name` in descending order, you can specify it as follows:

```sql
SELECT * FROM employees
ORDER BY last_name ASC, first_name DESC;
```

Overall, the `ORDER BY` clause is a powerful tool for organizing your query results in a meaningful way, allowing for better data analysis and interpretation.
