Xếp đặt kết quả
Https://phptravels.vn/ đã cân nhắc cách lấy dữ liệu từ các bảng của http://phptravels.vn/ bằng lệnh SELECT.
Kết quả được trả về theo cùng thứ tự các hồ sơ đã được thêm vào DataBase.
Đây là thứ tự sắp đặt mặc định.
Trong phần này, http://phptravels.vn/ sẽ cân nhắc cách http://phptravels.vn/ có thể sắp đặt kết quả truy vấn của mình.
Xếp đặt chỉ dễ dàng là sắp đặt lại kết quả truy vấn của http://phptravels.vn/ theo một cách rõ ràng và cụ thể
.
Xếp đặt có thể được thực hiện trên một cột hoặc trên nhiều cột.
Nó có thể được thực hiện trên số, chuỗi cũng như các loại dữ liệu ngày.
Xếp đặt theo mệnh đề
Mệnh đề theo mệnh đề được sử dụng để sắp đặt các tập kết quả truy vấn theo thứ tự tăng dần hoặc giảm dần.
Nó được sử dụng cùng với truy vấn SELECT.
Nó có cú pháp căn bản sau.
SELECT statement... [WHERE condition | GROUP BY `field_name(s)` HAVING condition] ORDER BY `field_name(s)` [ASC | DESC];
ĐÂY
-
“SELECT statement…” là truy vấn chọn thông thường
- “|”
đại diện cho các lựa chọn thay thế
-
“[WHERE condition | GROUP BY `field_name(s)` HAVING condition”
là điều kiện tùy chọn được sử dụng để lọc các tập kết quả truy vấn.
-
“ORDER BY” thực hiện sắp xếp tập kết quả truy vấn
-
“[ASC | DESC]” là keyword được sử dụng để sắp đặt các tập kết quả theo thứ tự tăng dần hoặc giảm dần.
Cảnh báo
ASC
được sử dụng làm mặc định.
Keyword DESC & ASC là gì?
ASC là dạng tóm gọn để tăng dần
DESC là dạng tóm gọn để giảm dần
Nó được sử dụng để sắp đặt các kết quả truy vấn theo kiểu từ trên xuống dưới.
Nó được sử dụng để sắp đặt các kết quả truy vấn theo kiểu từ dưới lên trên
Khi làm việc với các loại dữ liệu ngày, ngày sớm nhất được hiển thị trên đầu mục lục.
.
Khi làm việc với các loại ngày, ngày tiên tiến nhất được hiển thị trên đầu mục lục.
Khi làm việc với các loại dữ liệu số, các giá trị thấp nhất được hiển thị trên đầu mục lục.
Khi làm việc với các loại dữ liệu số, các giá trị cao nhất được hiển thị ở đầu tập kết quả truy vấn.
Khi làm việc với các kiểu dữ liệu chuỗi, tập kết quả truy vấn được sắp đặt từ các kiểu khởi đầu bằng chữ ? đi lên chữ Ż.
Khi làm việc với các kiểu dữ liệu chuỗi, tập kết quả truy vấn được sắp đặt từ các kiểu khởi đầu bằng chữ Ż đi xuống chữ ?.
Cả hai keyword DESC & ASC đều được sử dụng cùng với câu lệnh SELECT & mệnh đề ORDER BY.
Cú pháp DESC & ASC
Keyword sắp đặt DESC có cú pháp căn bản sau.
SELECT * FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC /DESC [LIMIT N]
ĐÂY
-
SELECT * FROM tableName(s) là câu lệnh chứa các trường & bảng (từ đó) để lấy kết quả được đặt từ đó.
-
[WHERE condition] là tùy chọn nhưng có thể được sử dụng để lọc dữ liệu theo điều kiện đã cho.
-
ORDER BY tên trường là bắt buộc & là trường mà việc sắp đặt sẽ được thực hiện.
Keyword DESC chỉ định rằng việc sắp đặt sẽ theo thứ tự giảm dần.
-
[LIMIT] là tùy chọn nhưng có thể được sử dụng để hạn chế số lượng kết quả được trả về từ tập kết quả truy vấn.
Chẳng hạn:
Hiện tại tất cả chúng ta hãy xem một chẳng hạn thực tiễn –
SELECT * FROM members;
Việc thực thi đoạn script trên trong bàn làm việc của MySQL so với myflixdb cho tất cả chúng ta các kết quả sau được hiển thị bên dưới.
membership_numberfull_namesgenderdate_of_birthphysical_addresspostal_addresscontct_numberemail
1Janet JonesFemale21-07-1980First Street Plot No 4Private Bag0759 253 542janetjones@yagoo.cm
2Janet Smith JonesFemale23-06-1980Melrose 123NULLNULLjj@fstreet.com
3Robert PhilMale12-07-19893rd Street 34NULL12345rm@tstreet.com
4Gloria WilliamsFemale14-02-19842nd Street 23NULLNULLNULL
5Leonard HofstadterMaleNULLWoodcrestNULL845738767NULL
6Sheldon CooperMaleNULLWoodcrestNULL976736763NULL
7Rajesh KoothrappaliMaleNULLWoodcrestNULL938867763NULL
8Leslie WinkleMale14-02-1984WoodcrestNULL987636553NULL
9Howard WolowitzMale24-08-1981SouthParkP.Σ. Box 4563987786553
Giả sử phòng ban quảng cáo mong muốn các cụ thể member được sắp đặt theo thứ tự ngày sinh giảm dần.
Điều này sẽ giúp họ gửi câu chúc mừng sinh nhật một cách kịp thời.
Https://phptravels.vn/ có thể thu được mục lục đã nói bằng cách thực hiện một truy vấn như dưới đây
SELECT * FROM members ORDER BY date_of_birth DESC;
Việc thực thi đoạn script trên trong bàn làm việc của MySQL so với myflixdb cho tất cả chúng ta các kết quả sau được hiển thị bên dưới.
Truy vấn tương đương theo thứ tự tăng dần
CHỌN * TỪ các member ĐẶT HÀNG THEO date_of_birth ASC
Cảnh báo: Giá trị NULL có nghĩa là không có giá trị (không phải chuỗi 0 hoặc chuỗi rỗng).
Xem xét cách chúng đã được sắp đặt.
Thêm chẳng hạn
Hãy cân nhắc các cốt chuyện sau đây liệt kê toàn bộ các hồ sơ member.
SELECT * FROM `members`;
Thực hiện đoạn script trên cho kết quả như sau.
membership_number
full_names
gender
date_of_birth
physical_address
postal_address
contct_number
tin nhắn hộp thư online
1
Janet Jones
Female
21-07-1980
First Street Plot No 4
Private Bag
0759 253 542
janetjones@yagoo.cm
2
Janet Smith Jones
Female
23-06-1980
Melrose 123
NULL
NULL
jj@fstreet.com
3
Robert Phil
Male
12-07-1989
3rd Street 34
NULL
12345
rm@tstreet.com
4
Gloria Williams
Female
14-02-1984
2nd Street 23
NULL
NULL
NULL
5
Leonard Hofstadter
Male
NULL
Woodcrest
NULL
845738767
NULL
6
Sheldon Cooper
Male
NULL
Woodcrest
NULL
976736763
NULL
7
Rajesh Koothrappali
Male
NULL
Woodcrest
NULL
938867763
NULL
8
Leslie Winkle
Male
14-02-1984
Woodcrest
NULL
987636553
NULL
9
Howard Wolowitz
Male
24-08-1981
SouthPark
ᴘ.Σ. Box 4563
987786553
NULL
Giả sử http://phptravels.vn/ mong muốn nhận mục lục sắp đặt tập kết quả truy vấn bằng trường giới tính, http://phptravels.vn/ sẽ sử dụng tập lệnh được hiển thị bên dưới.
SELECT * FROM `members` ORDER BY `gender`;
membership_number
full_names
gender
date_of_birth
physical_address
postal_address
contct_number
tin nhắn hộp thư online
1
Janet Jones
Female
21-07-1980
First Street Plot No 4
Private Bag
0759 253 542
janetjones@yagoo.cm
2
Janet Smith Jones
Female
23-06-1980
Melrose 123
NULL
NULL
jj@fstreet.com
4
Gloria Williams
Female
14-02-1984
2nd Street 23
NULL
NULL
NULL
3
Robert Phil
Male
12-07-1989
3rd Street 34
NULL
12345
rm@tstreet.com
5
Leonard Hofstadter
Male
NULL
Woodcrest
NULL
845738767
NULL
6
Sheldon Cooper
Male
NULL
Woodcrest
NULL
976736763
NULL
7
Rajesh Koothrappali
Male
NULL
Woodcrest
NULL
938867763
NULL
8
Leslie Winkle
Male
14-02-1984
Woodcrest
NULL
987636553
NULL
9
Howard Wolowitz
Male
24-08-1981
SouthPark
ᴘ.Σ. Box 4563
987786553
NULL
Các member “Nữ” đã được hiển thị trước nhất theo sau bởi các member “Nam”, điều đó là do khi mệnh đề theo thứ tự được sử dụng mà chẳng những định keyword ASC hoặc DESC, theo mặc định, MySQL đã sắp đặt kết quả truy vấn theo thứ tự tăng dần.
Hiện tại tất cả chúng ta hãy xem một chẳng hạn thực hiện
phân loại bằng hai cột
;
người trước nhất được
sắp đặt
trong
thứ tự tăng dần
theo mặc định trong lúc cột thứ hai được
sắp đặt
trong
thứ tự giảm dần.
SELECT * FROM `members` ORDER BY `gender`,`date_of_birth` DESC;
Việc thực thi đoạn script trên trong bàn làm việc của MySQL so với myflixdb cho kết quả như sau.
Cột giới tính được sắp đặt theo thứ tự tăng dần theo mặc định trong lúc cột ngày sinh được sắp đặt theo thứ tự giảm dần rõ ràng và cụ thể
Vì sao tất cả chúng ta có thể sử dụng DESC & ASC?
Giả sử http://phptravels.vn/ mong muốn in lịch sử thanh toán cho member thư viện video để giúp giải đáp các truy vấn từ quầy lễ tân, sẽ không hợp lý hơn nếu các khoản thanh toán được in theo thứ tự thời gian giảm dần khởi đầu bằng khoản thanh toán gần đây cho khoản thanh toán trước đây?
Keyword DESC bổ ích trong các tình huống như thế.
Https://phptravels.vn/ có thể viết một truy vấn sắp đặt mục lục theo thứ tự giảm dần bằng cách dùng ngày thanh toán.
Giả sử phòng ban quảng cáo mong muốn có một mục lục các bộ phim theo chuyên mục mà các member có thể sử dụng để quyết định những bộ phim nào có sẵn trong thư viện khi thuê phim, sẽ không hợp lý hơn nếu nhìn sắp đặt tên & tiêu đề của bộ phim theo thứ tự tăng dần để Member có thể mau chóng tra cứu thông tin từ mục lục?
Keyword ASC bổ ích trong các tình huống như thế;
tất cả chúng ta có thể lấy mục lục phim được sắp đặt theo tên mục lục & tiêu đề phim theo thứ tự tăng dần.
Tóm tắt
-
Xếp đặt kết quả truy vấn là sắp đặt lại các hàng được trả về từ kết quả truy vấn được đặt theo thứ tự tăng dần hoặc giảm dần.
-
Keyword DESC được sử dụng để sắp đặt kết quả truy vấn được sắp đặt theo thứ tự giảm dần.
-
Keyword ASC được sử dụng để sắp đặt kết quả truy vấn được đặt theo thứ tự tăng dần.
-
Cả DESC & ASC đều hoạt động cùng với keyword ORDER BY.
Chúng cũng có thể được sử dụng kết phù hợp với các keyword khác như mệnh đề WHERE & GIỚI HẠN
-
Mặc định cho ORDER BY khi không có gì được chỉ định rõ ràng và cụ thể là ASC.