Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Sắp xếp trong SQL không khó. Bài viết sẽ hướng dẫn bạn cách dùng desc và asc hay sắp xếp tăng dần và giảm dần trong SQL.
Mệnh đề ORDER BY của SQL được sử dụng để sắp xếp dữ liệu theo thứ tự tăng dần hoặc giảm dần, dựa trên một hoặc nhiều cột. Theo mặc định, một số cơ sở dữ liệu sắp xếp kết quả truy vấn theo thứ tự tăng dần.
Ngoài ra, mệnh đề ORDER BY cũng có thể sắp xếp dữ liệu trong bảng cơ sở dữ liệu theo thứ tự ưu tiên. Trường hợp này có thể không sắp xếp các bản ghi của bảng theo bất kỳ thứ tự chuẩn nào (như theo thứ tự chữ cái hoặc thứ tự từ điển), nhưng chúng có thể được sắp xếp dựa trên bất kỳ điều kiện bên ngoài nào. Ví dụ, trong bảng ORDERS chứa danh sách các đơn hàng do nhiều khách hàng của một tổ chức thực hiện, thông tin chi tiết về các đơn hàng đã đặt có thể được sắp xếp dựa trên ngày thực hiện đơn hàng đó. Điều này không cần phải được sắp xếp theo thứ tự chữ cái, thay vào đó, nó dựa trên "ai đến trước được phục vụ trước".
Cú pháp cơ bản của mệnh đề 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 như sau:
SELECT danhsach_cot FROM ten_bang [WHERE dieu_kien] [ORDER BY cot_1, cot_2, .. cot_N] [ASC | DESC];
Lưu ý:
Giả sử bảng NHANVIEN có các bản ghi như sau:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 1 | Thanh | 32 | Haiphong | 2000.00 | | 2 | Loan | 25 | Hanoi | 1500.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 4 | Manh | 25 | Hue | 6500.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 6 | Cao | 22 | HCM | 4500.00 | | 7 | Lam | 24 | Haiduong | 10000.00 | +----+----------+-----+-----------+----------+
Ví dụ sau minh họa cách sắp xếp theo thứ tự tăng dần cho TEN và LUONG.
SQL> SELECT * FROM NHANVIEN ORDER BY TEN, LUONG;
Ví dụ trên trả về kết quả:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 6 | Cao | 22 | HCM | 4500.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 7 | Lam | 24 | Haiduong | 10000.00 | | 2 | Loan | 25 | Hanoi | 1500.00 | | 4 | Manh | 25 | Hue | 6500.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 1 | Thanh | 32 | Haiphong | 2000.00 | +----+----------+-----+-----------+----------+
Khối lệnh sau sẽ sắp xếp kết quả theo thứ tự giảm dần bởi trường TEN.
SQL> SELECT * FROM NHANVIEN ORDER BY TEN DESC;
Kết quả trả về là:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 1 | Thanh | 32 | Haiphong | 2000.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 4 | Manh | 25 | Hue | 6500.00 | | 2 | Loan | 25 | Hanoi | 1500.00 | | 7 | Lam | 24 | Haiduong | 10000.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 6 | Cao | 22 | HCM | 4500.00 | +----+----------+-----+-----------+----------+
Để lấy các hàng với thứ tự ưu tiên riêng, truy vấn SELECT sẽ như sau:
SQL> SELECT * FROM NHANVIEN ORDER BY (CASE DIACHI WHEN 'Hanoi' THEN 1 WHEN 'Haiduong' THEN 2 WHEN 'HCM' THEN 3 ELSE 100 END) ASC, DIACHI DESC;
Kết quả trả về là:
+----+----------+-----+-----------+----------+ | ID | TEN |TUOI | DIACHI | LUONG | +----+----------+-----+-----------+----------+ | 2 | Loan | 25 | Hanoi | 1500.00 | | 7 | Lam | 24 | Haiduong | 10000.00 | | 6 | Cao | 22 | HCM | 4500.00 | | 1 | Thanh | 32 | Haiphong | 2000.00 | | 3 | Nga | 23 | Hanam | 2000.00 | | 5 | Huy | 27 | Hatinh | 8500.00 | | 4 | Manh | 25 | Hue | 6500.00 | +----+----------+-----+-----------+----------+
Đầu tiên, ta có thể sắp xếp nhân viên theo DIACHI với thứ tự của riêng mình, sau đó, các DIACHI còn lại sẽ được sắp xếp tự nhiên theo thứ tự đảo ngược của bảng chữ cái.
Trong phần tiếp theo, chúng ta sẽ tìm hiểu về các ràng buộc trong SQL, các bạn nhớ theo dõi nhé.
Nguồn tin: Quantrimang.com:
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Karaoke Người Đó Tôi Đây Tình Đâu(Midi)
Chuyển tin nhắn Messenger thành bài hát trong nháy mắt
Cách xây dựng game nhiều người chơi với Claude Opus 5.5
Cách xem thời tiết trong ChatGPT với AccuWeather để lên kế hoạch
Karaoke Lạnh (Midi)
Cách kết nối ElevenLabs AI agent với Exa
Thiết lập cách ChatGPT thông báo cho bạn khi có công việc cần chú ý
TOP phần mềm OCR scan tài liệu có tích hợp AI tốt nhất
6 trang web tạo mật khẩu ngẫu nhiên an toàn đáng tin cậy
TOP nền tảng xây dựng công cụ nội bộ có tích hợp AI
TOP phần mềm AI bảo mật Internet tốt nhất hiện nay
Biến các ý tưởng thành giải thích trực quan, tương tác trong ChatGPT
TOP tiện ích mở rộng AI cho VS Code tốt nhất
Cách tạo website Portfolio miễn phí bằng ChatGPT
6 lựa chọn thay thế Visual Studio Code tốt nhất có tích hợp AI
Tạo form hỏi đáp tương tác trong vài phút và prompt chỉnh sửa
Hướng dẫn sử dụng Google Slides trong Claude
Hướng dẫn sử dụng Wolfram trong ChatGPT giải toán nâng cao
15 prompt AI thú vị cho ngày lễ Halloween
Hoàn thiện một thiết kế thực tế với ChatGPT + Canva
Hướng dẫn cài đặt và sử dụng n8n trên Windows 11
Cách lập trình chuyên nghiệp hơn, dễ dàng hơn với tính năng Tệp trên Grok
Công thức tính diện tích hình Elip
Hướng dẫn ngắt kết nối ứng dụng trên ChatGPT
Hướng dẫn tạo đoạn hội thoại cho topic trên Twee
Bức tranh tổng quan về hỗ trợ khách hàng tích hợp AI
Cách sửa lỗi There Are Currently No Power Options Available Windows
Claude Code thực sự có giá bao nhiêu?
5 tài liệu hay nhất giúp bạn làm chủ Small Language Model (SLM) năm 2026
Hướng dẫn 8 cách mở bàn phím ảo trên Windows 10