Từ khóa ORDER BY sắp xếp kết quả một cột

ORDER BY được sử dụng cùng với SELECT để sắp xếp thứ tự (tăng dần, giảm dần) tập kết quả trả về.

Ví dụ: kết quả trả về sắp xếp theo tứ tự tăng dần của CustomerName (do CustomerName là text nên sắp xếp theo bảng chữ cái, vần A rồi đến B ..., trong trường hợp cột sắp xếp dạng số thì sẽ xếp theo giá trị theo kiểu số)

Mặc định ORDER BY sắp xếp tăng dần (ASC giá trị nhỏ ở những dòng đầu lớn ở sau)

SELECT * FROM Khachhang
ORDER BY CustomerName
LIMIT 14, 9
Kết quả:
KhachhangID HoTen TenLienLac Diachi Thanhpho MaBuudien QuocGia
3 Lưu Trang Anh Lưu Trang Anh h Gia Lai Gia Lai 222 Mỹ
20 Mai Tùng Bách Mai Tùng Bách fxrtrx Đồng Tháp Đồng Tháp 100 Đức
11 Mạc Trung Đức Mạc Trung Đức ivwfcu Đồng Nai Đồng Nai 500 Việt Nam
90 Nguyễn Bích Thủy Nguyễn Bích Thủy dtfbfx Điện Biên Điện Biên 500 Ý
74 Nguyễn Diệu Hương Nguyễn Diệu Hương mamqnydv Đắk Nông Đắk Nông 300 Mỹ
18 Nguyễn Hùng Anh Nguyễn Hùng Anh d Đắk Lắk Đắk Lắk 200 Đức
39 Nguyễn Hữu Ngọc Khánh Nguyễn Hữu Ngọc Khánh nwsh Cao Bằng Cao Bằng 100 Việt Nam
14 Nguyễn Lê Hiếu Nguyễn Lê Hiếu giwumbyj Bình Thuận Bình Thuận 999 Ý
15 Nguyễn Lê Hiếu Nguyễn Lê Hiếu ffc Cà Mau Cà Mau 100 Anh

Có một file CSDL mẫu dạng SQLite, bạn có thể tải về thực hành: CSDL SQLite mẫu. Hoặc Chạy SQL Online

Từ khóa ORDER BY xếp nhiều cột

ORDER BY cho phép xếp theo nhiều cột. Các cột chỉ ra trong mệnh đề ORDER BY cách nhau bởi dấu phảy.

Ví dụ xếp kết quả truy vấn sau theo tên quôc gia, sau đó các kết quả cùng quốc gia xếp theo CustomeID

SELECT * FROM Khachhang
ORDER BY Quocgia, KhachhangID
LIMIT 9
KhachhangIDHoTenTenLienLacDiachiThanhphoMaBuudienQuocGia
13Nguyễn Thị Ngân HàNguyễn Thị Ngân Hàuklfrhrq Vĩnh LongVĩnh Long100Anh
15Nguyễn Lê HiếuNguyễn Lê Hiếuffc Cà MauCà Mau100Anh
23Phạm Văn ĐạtPhạm Văn Đạtij Nam ĐịnhNam Định455Anh
24Hoàng An ĐôngHoàng An Đôngb Lâm ĐồngLâm Đồng222Anh
29Phạm Ngọc HiếuPhạm Ngọc Hiếuuz Sóc TrăngSóc Trăng500Anh
33Vũ Thanh HuyềnVũ Thanh Huyềnhkfqpjnc Hà GiangHà Giang455Anh
42Hồ Nguyễn Minh KhuêHồ Nguyễn Minh Khuêeca Hưng YênHưng Yên999Anh
44Đinh Hoàng Tùng LâmĐinh Hoàng Tùng Lâmgjorbv Bình PhướcBình Phước100Anh
47Lê Trần Tuấn MinhLê Trần Tuấn Minhqnnefkav Hà NamHà Nam222Anh

ORDER BY tăng dần, giảm dần

Để chỉ rõ cách xếp theo tăng, giảm thì ORDER BY kết hợp với ASCDESC

  • ORDER BY tên-cột ASC, ... xếp tăng dần, mặc định.
  • ORDER BY tên-cột DESC, ... xếp giảm dần.

Ví dụ xếp kết quả tên quốc gia giảm dần, sau đó trong cùng quốc gia thì CustomeID tăng dần

SELECT * FROM Khachhang
ORDER BY Quocgia DESC, KhachhangID ASC
LIMIT 9
KhachhangID HoTen TenLienLac Diachi Thanhpho MaBuudien QuocGia
1 Đặng Tuấn Anh Đặng Tuấn Anh nkhbiq Bà Rịa - Vũng Tàu Bà Rịa - Vũng Tàu 222 Đức
2 Hoàng Đức Anh Hoàng Đức Anh u Kiên Giang Kiên Giang 100 Đức
12 Vũ Hương Giang Vũ Hương Giang lz Hà Tĩnh Hà Tĩnh 777 Đức
18 Nguyễn Hùng Anh Nguyễn Hùng Anh d Đắk Lắk Đắk Lắk 200 Đức
19 Nguyễn Ngọc Anh Nguyễn Ngọc Anh zsb Bình Dương Bình Dương 777 Đức
20 Mai Tùng Bách Mai Tùng Bách fxrtrx Đồng Tháp Đồng Tháp 100 Đức
22 Vũ Điệp Chi Vũ Điệp Chi cchw Cà Mau Cà Mau 200 Đức
26 Phí Vũ Trí Đức Phí Vũ Trí Đức jfmmxqhk Tây Ninh Tây Ninh 222 Đức
34 Phạm Thu Huyền Phạm Thu Huyền k Quảng Ngãi Quảng Ngãi 200 Đức

Đăng ký nhận bài viết mới