Hướng dẫn này chỉ cho bạn cách sử dụng mệnh đề ORDER BY trong SQL để sắp xếp các hàng được trả về bởi mệnh đề SELECT theo thứ tự tăng dần hoặc giảm dần.
Bạn đang xem : thứ tự sql theo số
Tóm tắt : Hướng dẫn này chỉ cho bạn cách sử dụng mệnh đề SQL ORDER BY
để sắp xếp tập hợp kết quả dựa trên các tiêu chí được chỉ định theo thứ tự tăng dần hoặc giảm dần.
Giới thiệu về SQL ORDER BY code > mệnh đề
ORDER BY
là mệnh đề tùy chọn của câu lệnh SELECT
. Mệnh đề ORDER BY
cho phép bạn sắp xếp các hàng được trả về bởi mệnh đề SELECT
theo một hoặc nhiều biểu thức sắp xếp theo thứ tự tăng dần hoặc giảm dần.
Sau đây hiển thị cú pháp của mệnh đề ORDER BY
:
CHỌN
select_listTỪ
tên_bảngĐẶT HÀNG
THEO
sort_expression [ASC
|DESC
];Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
Trong cú pháp này:
- Đầu tiên, đặt mệnh đề
ORDER BY
sauFROM mã> mệnh đề. Cơ sở dữ liệu sẽ đánh giá câu lệnh
SELECT
với mệnh đềORDER BY
* theo thứ tự sau:FROM
& gt;CHỌN
& gt;ORDER BY
. - Thứ hai, chỉ định một biểu thức sắp xếp sau mệnh đề
ORDER BY
. Biểu thức sắp xếp chỉ định tiêu chí sắp xếp. - Thứ ba, sử dụng tùy chọn
ASC
để sắp xếp kết quả được đặt theo biểu thức sắp xếp theo thứ tự tăng dần vàDESC
để sắp xếp kết quả được đặt bởi biểu thức sắp xếp theo thứ tự giảm dần.
Lưu ý rằng mệnh đề ORDER BY
sử dụng tùy chọn ASC
theo mặc định nếu bạn không ASC
hoặc DESC
.
Mệnh đề ORDER BY
cũng cho phép bạn sắp xếp kết quả theo nhiều biểu thức. Trong trường hợp này, bạn cần sử dụng dấu phẩy để phân tách hai biểu thức sắp xếp:
CHỌN
select_list
TỪ
table_name
ĐẶT HÀNG
THEO
sort_expression_1
[ASC | DESC]
,sort_expression_2
[ASC | DESC]
;Ngôn ngữ mã:
CSS
(
css
)
Trong cú pháp này, mệnh đề ORDER BY
sắp xếp kết quả được đặt bởi sort_expression_1
trước, sau đó sắp xếp kết quả được sắp xếp theo sort_expression_2
. p>
Lưu ý rằng nếu bạn không chỉ định mệnh đề ORDER BY
, câu lệnh SELECT
sẽ không sắp xếp tập kết quả. Có nghĩa là các hàng trong tập kết quả không có thứ tự cụ thể.
Ví dụ về mệnh đề SQL ORDER BY
Chúng tôi sẽ sử dụng bảng nhân viên
trong cơ sở dữ liệu mẫu cho cuộc trình diễn.
1) Sử dụng mệnh đề ORDER BY
của SQL để sắp xếp giá trị trong ví dụ một cột
Câu lệnh SELECT
sau đây trả về dữ liệu từ id nhân viên, họ, tên, ngày tuyển dụng và cột lương của nhân viên < / code> table:
CHỌN
Mã hiệu công nhân, họ, họ, ngày thuê, lươngTỪ
nhân viên;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
< span class = "sql" rel = "noopener noreferrer" target = "_ blank"> Hãy thử
+ ------------- + ------------- + ------------- + ------------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 100 | Steven | Vua | Năm 1987-06-17 | 24000,00 | | 101 | Neena | Kochhar | Năm 1989-09-21 | 17000,00 | | 102 | Lex | De Haan | Năm 1993-01-13 | 17000,00 | | 103 | Alexander | Hunold | Năm 1990-01-03 | 9000,00 | | 104 | Lý Tiểu Long | Ernst | Năm 1991-05-21 | 6000,00 | | 105 | David | Austin | 1997-06-25 | 4800,00 | | 106 | Valli | Pataballa | 1998-02-05 | 4800,00 | | 107 | Diana | Lorentz | 1999-02-07 | 4200,00 | | 108 | Nancy | Greenberg | Năm 1994-08-17 | 12000,00 | | 109 | Daniel | Faviet | Năm 1994-08-16 | 9000,00 | | 110 | John | Chen | 1997-09-28 | 8200,00 | ...
Như bạn có thể thấy rõ từ đầu ra, các hàng không có bất kỳ thứ tự nào.
Ví dụ sau sử dụng mệnh đề ORDER BY để sắp xếp nhân viên theo tên theo thứ tự bảng chữ cái:
CHỌN
Mã hiệu công nhân, họ, họ, ngày thuê, lươngTỪ
người lao độngĐẶT HÀNG
THEO
first_name;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
< span class = "sql" rel = "noopener noreferrer" target = "_ blank"> Dùng thử
+ ------------- + ------------- + ------------- + ------ ------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 121 | Adam | Fripp | 1997-04-10 | 8200,00 | | 115 | Alexander | Khoo | 1995-05-18 | 3100,00 | | 103 | Alexander | Hunold | Năm 1990-01-03 | 9000,00 | | Năm 193 | Britney | Everett | 1997-03-03 | 3900,00 | | 104 | Lý Tiểu Long | Ernst | Năm 1991-05-21 | 6000,00 | | 179 | Charles | Johnson | 2000-01-04 | 6200,00 | | 109 | Daniel | Faviet | Năm 1994-08-16 | 9000,00 | | 105 | David | Austin | 1997-06-25 | 4800,00 | | 114 | Den | Nhanh chóng | Năm 1994-12-07 | 11000,00 | | 107 | Diana | Lorentz | 1999-02-07 | 4200,00 | ...
ORDER BY
sắp xếp các hàng theo giá trị trong cột first_name
.
2) Sử dụng mệnh đề SQL ORDER BY
để sắp xếp các giá trị trong nhiều cột ví dụ
Ví dụ sau sử dụng mệnh đề ORDER BY để sắp xếp nhân viên theo tên theo thứ tự tăng dần và họ theo thứ tự giảm dần:
CHỌN < / p> Mã hiệu công nhân, họ, họ, ngày thuê, lương
TỪ
người lao độngĐẶT HÀNG
THEO
họ, last_nameDESC
;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
Hãy thử
+ ------------- + ------------- + ----- -------- + ------------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 121 | Adam | Fripp | 1997-04-10 | 8200,00 | | 115 | Alexander | Khoo | 1995-05-18 | 3100,00 | | 103 | Alexander | Hunold | Năm 1990-01-03 | 9000,00 | | Năm 193 | Britney | Everett | 1997-03-03 | 3900,00 | | 104 | Lý Tiểu Long | Ernst | Năm 1991-05-21 | 6000,00 | | 179 | Charles | Johnson | 2000-01-04 | 6200,00 | | 109 | Daniel | Faviet | Năm 1994-08-16 | 9000,00 | | 105 | David | Austin | 1997-06-25 | 4800,00 | | 114 | Den | Nhanh chóng | Năm 1994-12-07 | 11000,00 | | 107 | Diana | Lorentz | 1999-02-07 | 4200,00 | | 118 | Chàng trai | Himuro | 1998-11-15 | 2600,00 | ...
Trong ví dụ này, mệnh đề ORDER BY sắp xếp kết quả được đặt theo tên theo thứ tự tăng dần, sau đó nó sắp xếp kết quả được sắp xếp theo họ trong thứ tự giảm dần.
Lưu ý sự thay đổi vị trí của hai nhân viên: Alexander Khoo
và Alexander Hunold
trong tập kết quả.
3) Sử dụng mệnh đề SQL ORDER BY
để sắp xếp các giá trị trong ví dụ cột số h3>
Ví dụ sau sử dụng mệnh đề ORDER BY để sắp xếp nhân viên theo mức lương từ cao xuống thấp:
CHỌN
Mã hiệu công nhân, họ, họ, ngày thuê, lươngTỪ
người lao độngĐẶT HÀNG
THEO
lươngDESC
;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
Hãy thử
+ ------------- + ------------- + ----- -------- + ------------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 100 | Steven | Vua | Năm 1987-06-17 | 24000,00 | | 101 | Neena | Kochhar | Năm 1989-09-21 | 17000,00 | | 102 | Lex | De Haan | Năm 1993-01-13 | 17000,00 | | 145 | John | Russell | 1996-10-01 | 14000,00 | | 146 | Karen | Đối tác | 1997-01-05 | 13500,00 | | Năm 201 | Michael | Hartstein | Năm 1996-02-17 | 13000,00 | | Chương 205 | Shelley | Higgins | Năm 1994-06-07 | 12000,00 | | 108 | Nancy | Greenberg | Năm 1994-08-17 | 12000,00 | | 114 | Den | Nhanh chóng | Năm 1994-12-07 | 11000,00 | ...
4) Sử dụng SQL ORDER BY
để sắp xếp theo ví dụ về ngày tháng
Ngoài dữ liệu ký tự và số, bạn có thể sử dụng mệnh đề ORDER BY để sắp xếp các hàng theo ngày. Ví dụ: câu lệnh sau sử dụng mệnh đề ORDER BY để sắp xếp nhân viên theo các giá trị trong cột Rent_date
từ:
< code class = "hljs language-sql">
CHỌN
Mã hiệu công nhân, họ, họ, ngày thuê, lươngTỪ
người lao độngĐẶT HÀNG
THEO
Rent_date;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
< span class = "sql" rel = "noopener noreferrer" target = "_ blank"> Dùng thử
+ ------------- + ------------- + ------------- + ------ ------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 100 | Steven | Vua | Năm 1987-06-17 | 24000,00 | | 200 | Jennifer | Whalen | Năm 1987-09-17 | 4400,00 | | 101 | Neena | Kochhar | Năm 1989-09-21 | 17000,00 | | 103 | Alexander | Hunold | Năm 1990-01-03 | 9000,00 | | 104 | Lý Tiểu Long | Ernst | Năm 1991-05-21 | 6000,00 | | 102 | Lex | De Haan | Năm 1993-01-13 | 17000,00 | | Năm 203 | Susan | Mavris | Năm 1994-06-07 | 6500,00 | | 204 | Hermann | Baer | Năm 1994-06-07 | 10000,00 | ...
Để xem những nhân viên đã gia nhập công ty từ cuối cùng đến sớm nhất, bạn sắp xếp nhân viên theo ngày tuyển dụng theo thứ tự giảm dần:
CHỌN
Mã hiệu công nhân, họ, họ, ngày thuê, lươngTỪ
người lao độngĐẶT HÀNG
THEO
Rent_dateDESC
;Ngôn ngữ mã:
SQL (Ngôn ngữ truy vấn có cấu trúc)
(
sql
)
Hãy thử
+ ------------- + ------------- + ------------- + ------------ + ---------- + | nhân_viên | first_name | last_name | ngày_mướn | lương | + ------------- + ------------- + ------------- + ------- ----- + ---------- + | 179 | Charles | Johnson | 2000-01-04 | 6200,00 | | 113 | Luis | Popp | 1999-12-07 | 6900,00 | | 119 | Karen | Colmenares | 1999-08-10 | 2500,00 | | 178 | Kimberely | Trợ cấp | 1999-05-24 | 7000,00 | | 107 | Diana | Lorentz | 1999-02-07 | 4200,00 | | 118 | Chàng trai | Himuro | 1998-11-15 | 2600,00 | | 126 | Irene | Mikkilineni | 1998-09-28 | 2700,00 | | 177 | Jack | Livingston | 1998-04-23 | 8400,00 | | 176 | Jonathon | Taylor | 1998-03-24 | 8600,00 | ...
Tóm tắt
- Sử dụng mệnh đề
ORDER BY
để sắp xếp các hàng được trả về bởiMệnh đề SELECT
. - Sử dụng tùy chọn
ASC
để sắp xếp các hàng theo thứ tự tăng dần và tùy chọnDESC
để sắp xếp các hàng theo thứ tự giảm dần. li>
Hướng dẫn này có hữu ích không?
< / p>
Xem thêm những thông tin liên quan đến chủ đề sql đặt hàng theo số
SQL Order By: How to Order Your Results
- Tác giả: Database Star
- Ngày đăng: 2021-10-18
- Đánh giá: 4 ⭐ ( 9136 lượt đánh giá )
- Khớp với kết quả tìm kiếm: The SQL ORDER BY keyword is used to order your results in a SELECT query.
The results of a SELECT query are not ordered automatically. They may sometimes look like they are in a certain order (e.g. the order you inserted them), but without the ORDER BY clause, the order is not guaranteed.
If you need to have your results in a specific order, then you can use the ORDER BY keyword.
You can specify the column or columns to order by, and whether to order them in ascending or descending order.
In this video, you'll learn how to use the ORDER BY clause, as well as a few tips for using it. You'll learn where in the SELECT query it needs to go, whether or not it can use an alias, an alternative method of referring to columns, and several other tips.
Also, if you don't absolutely need to order your results, consider not using the ORDER BY clause. It can slow down your query, especially if you have a large result.
If you want to read an article on this topic, check out my guide to the SQL ORDER BY clause here: https://www.databasestar.com/sql-order-by/
Timestamps:
00:00 Start
00:15 What is Order By?
00:37 Syntax of the Order By command
00:56 Example
01:10 What to know about Order By
03:22 Order by columns not in the SELECT clause
03:50 Order By can be expensive
SQL để sắp xếp theo số - 1,2,3,4, v.v. thay vì 1,10,11,12
- Tác giả: qastack.vn
- Đánh giá: 5 ⭐ ( 9756 lượt đánh giá )
- Khớp với kết quả tìm kiếm: [Tìm thấy giải pháp!] Một cách để sắp xếp theo số nguyên dương, khi chúng được lưu trữ dưới dạng…
GROUP BY trong SQL Server
- Tác giả: comdy.vn
- Đánh giá: 3 ⭐ ( 6672 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Cách sử dụng mệnh đề GROUP BY trong SQL Server để sắp xếp các bản ghi theo nhóm.
Sử dụng trigger trong SQL qua ví dụ cơ bản.
- Tác giả: viblo.asia
- Đánh giá: 3 ⭐ ( 5995 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Trigger là gì ? Hiểu đơn giản thì Trigger là một stored procedure không có tham số. Trigger thực thi một cách tự động khi một trong ba câu lệnh Insert, Update, Delete làm thay đổi dữ liệu trên bảng có...
Hàm COUNT(), AVG() Và SUM() Trong SQL
- Tác giả: www.codehub.com.vn
- Đánh giá: 4 ⭐ ( 8963 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Hàm **COUNT()** trả về số hàng phù hợp với tiêu chí đã chỉ định. Hàm **AVG()** trả về giá trị trung bình của một cột số. Hàm **SUM()** trả về tổng số của một cột số.
Đặt hàng theo một số cụ thể trong MySQL?
- Tác giả: vn.wsxdn.com
- Đánh giá: 3 ⭐ ( 2934 lượt đánh giá )
- Khớp với kết quả tìm kiếm:
Lệnh Select các hàng trong Sql
- Tác giả: glx.com.vn
- Đánh giá: 5 ⭐ ( 4189 lượt đánh giá )
- Khớp với kết quả tìm kiếm: Công ty Công nghệ số Galaxy Việt Nam, sản phẩm và dịch vụ công nghệ thông tin, hosting, phần mềm, app mobile
Xem thêm các bài viết khác thuộc chuyên mục: Kiến thức lập trình