07/09/2018, 13:40

Từ Khóa ORDER BY Trong SQL

Từ Khóa ORDER BY để làm gì? Từ khóa ORDER BY được sử dụng để sắp xếp kết quả theo thứ tự tăng dần hoặc giảm dần. Từ khóa ORDER BY sắp xếp các bản ghi theo thứ tự tăng dần theo mặc định. Để sắp xếp các bản ghi theo thứ tự giảm dần, bạn có thể sử dụng từ khóa DESC . Cú Pháp ORDER BY ...

Từ Khóa ORDER BY để làm gì?

Từ khóa ORDER BY được sử dụng để sắp xếp kết quả theo thứ tự tăng dần hoặc giảm dần.

Từ khóa ORDER BY sắp xếp các bản ghi theo thứ tự tăng dần theo mặc định. Để sắp xếp các bản ghi theo thứ tự giảm dần, bạn có thể sử dụng từ khóa DESC.

Cú Pháp ORDER BY

SELECT cột_1, cột_2, ...FROM tên_bảng ORDER BY cột1, cột2, ... ASC|DESC;

Dữ Liệu DEMO

Dưới đây là dữ liệu từ bảng khach_hang trong cơ sở dữ liệu:

| ID | ten_khach_hang   | tuoi | dia_chi     |
|----|------------------|------|-------------|
| 1  | Nguyễn Thị Thắm  | 20   | Gia Lâm     |
| 2  | Hoàng Văn Sơn    | 21   | Hoàng Mai   |
| 3  | Phạm Thị Hương   | 20   | Hà Đông     |
| 4  | Nguyễn Văn Chiến | 22   | Nguyễn Trãi |
| 5  | Nguyễn Thị Thu   | 21   | Giáp Bát    |

Ví Dụ Về ORDER BY

Câu lệnh SQL sau đây chọn tất cả các khách hàng từ bảng khach_hang, được sắp xếp theo cột tuoi:

SELECT * FROM khach_hang ORDER BY tuoi;

Kết quả trả về là:

    | ID | ten_khach_hang   | tuoi | dia_chi     |
    |----|------------------|------|-------------|
    | 1  | Nguyễn Thị Thắm  | 20   | Gia Lâm     |   
    | 3  | Phạm Thị Hương   | 20   | Hà Đông     |
    | 2  | Hoàng Văn Sơn    | 21   | Hoàng Mai   |
    | 5  | Nguyễn Thị Thu   | 21   | Giáp Bát    |
    | 4  | Nguyễn Văn Chiến | 22   | Nguyễn Trãi |

Ví Dụ Về ORDER BY DESC

Câu lệnh SQL sau đây chọn tất cả các khách hàng từ bảng khach_hang, được sắp xếp giảm dần theo cột tuoi:

SELECT * FROM khach_hang ORDER BY tuoi DESC;

Kết quả trả về là:

     | ID | ten_khach_hang   | tuoi | dia_chi     |
     |----|------------------|------|-------------|                       
     | 4  | Nguyễn Văn Chiến | 22   | Nguyễn Trãi |
     | 2  | Hoàng Văn Sơn    | 21   | Hoàng Mai   |
     | 5  | Nguyễn Thị Thu   | 21   | Giáp Bát    |
     | 1  | Nguyễn Thị Thắm  | 20   | Gia Lâm     |   
     | 3  | Phạm Thị Hương   | 20   | Hà Đông     |

Ví Dụ Về ORDER BY Với Nhiều Cột

Câu lệnh SQL sau đây chọn tất cả các khách hàng từ bảng khach_hang, được sắp xếp theo cột tuoi và dia_chi:

SELECT * FROM khach_hang ORDER BY tuoi, dia_chi;

Kết quả trả về là:

    | ID | ten_khach_hang   | tuoi | dia_chi     |
    |----|------------------|------|-------------|
    | 3  | Phạm Thị Hương   | 20   | Hà Đông     |
    | 1  | Nguyễn Thị Thắm  | 20   | Gia Lâm     |           
    | 2  | Hoàng Văn Sơn    | 21   | Hoàng Mai   |
    | 5  | Nguyễn Thị Thu   | 21   | Giáp Bát    |
    | 4  | Nguyễn Văn Chiến | 22   | Nguyễn Trãi |

Ví Dụ Thứ 2 Về ORDER BY Với Nhiều Cột

Câu lệnh SQL sau đây chọn tất cả các khách hàng từ bảng khach_hang, được sắp xếp theo cột tuoi tăng dần và dia_chi giảm dần:

SELECT * FROM khach_hang ORDER BY tuoi ASC, dia_chi DESC;

Kết quả trả về là:

    | ID | ten_khach_hang   | tuoi | dia_chi     |
    |----|------------------|------|-------------|
    | 1  | Nguyễn Thị Thắm  | 20   | Gia Lâm     |         
    | 3  | Phạm Thị Hương   | 20   | Hà Đông     |
    | 5  | Nguyễn Thị Thu   | 21   | Giáp Bát    |             
    | 2  | Hoàng Văn Sơn    | 21   | Hoàng Mai   |    
    | 4  | Nguyễn Văn Chiến | 22   | Nguyễn Trãi |

Chú ý rằng: đầu tiên dữ liệu sẽ được sắp theo tuoi tăng dần trước rồi sau đó mới sắp xếp dia_chi giảm dần.

Bài viết về từ khóa ORDER BY đến đây là hết. Hẹn gặp lại các bạn ở các bài tiếp theo.

Cảm ơn các bạn đã theo dõi!

0