Thứ tự mysql theo bảng chữ cái

Tóm lược. trong hướng dẫn này, bạn sẽ học cách sắp xếp các hàng trong tập kết quả bằng cách sử dụng mệnh đề MySQL

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

Giới thiệu về mệnh đề ORDER BY của MySQL

Khi bạn sử dụng câu lệnh

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
9 để truy vấn dữ liệu từ một bảng, thứ tự của các hàng trong tập hợp kết quả không được chỉ định. Để sắp xếp các hàng trong tập kết quả, bạn thêm mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 vào câu lệnh

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1

Sau đây minh họa cú pháp của mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

SELECT select_list FROM table_name ORDER BY column1 [ASC|DESC], column2 [ASC|DESC], ...;

Code language: SQL [Structured Query Language] [sql]

Trong cú pháp này, bạn chỉ định một hoặc nhiều cột mà bạn muốn sắp xếp sau mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4 là viết tắt của tăng dần và

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5 là viết tắt của giảm dần. Bạn sử dụng

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4 để sắp xếp tập kết quả theo thứ tự tăng dần và

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5 để sắp xếp tập kết quả theo thứ tự giảm dần tương ứng

Mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 này sắp xếp tập hợp kết quả theo các giá trị trong

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
9 theo thứ tự tăng dần

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]

Và mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 này sắp xếp tập hợp kết quả theo các giá trị trong

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
9 theo thứ tự giảm dần

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]

Theo mặc định, mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 sử dụng

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4 nếu bạn không chỉ định rõ ràng bất kỳ tùy chọn nào. Do đó, các mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 sau đây là tương đương

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]

ORDER BY column1;

Code language: SQL [Structured Query Language] [sql]

Nếu bạn muốn sắp xếp tập hợp kết quả theo nhiều cột, bạn chỉ định danh sách các cột được phân tách bằng dấu phẩy trong mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

ORDER BY column1, column2;

Code language: SQL [Structured Query Language] [sql]

Trong trường hợp này, mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 sắp xếp tập kết quả của

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
9 theo thứ tự tăng dần trước và sắp xếp tập kết quả đã sắp xếp của

ORDER BY column1;

Code language: SQL [Structured Query Language] [sql]
8 theo thứ tự tăng dần

Có thể sắp xếp tập hợp kết quả theo một cột theo thứ tự tăng dần và sau đó theo cột khác theo thứ tự giảm dần

ORDER BY column1 ASC, column2 DESC;

Code language: SQL [Structured Query Language] [sql]

Trong trường hợp này, mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

  • Đầu tiên, sắp xếp tập hợp kết quả theo các giá trị trong

    ORDER BY column1 ASC;

    Code language: SQL [Structured Query Language] [sql]
    9 theo thứ tự tăng dần
  • Sau đó, sắp xếp tập hợp kết quả đã sắp xếp theo các giá trị trong

    ORDER BY column1;

    Code language: SQL [Structured Query Language] [sql]
    8  theo thứ tự giảm dần. Lưu ý rằng thứ tự của các giá trị trong

    ORDER BY column1 ASC;

    Code language: SQL [Structured Query Language] [sql]
    9 sẽ không thay đổi trong bước này, chỉ thứ tự của các giá trị trong

    ORDER BY column1;

    Code language: SQL [Structured Query Language] [sql]
    8 thay đổi

Khi thực thi câu lệnh

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1 với mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8, MySQL luôn đánh giá mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 sau mệnh đề

ORDER BY column1, column2;

Code language: SQL [Structured Query Language] [sql]
7 và

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1

MySQL ORDER BY ví dụ

Chúng tôi sẽ sử dụng bảng

ORDER BY column1, column2;

Code language: SQL [Structured Query Language] [sql]
9 từ cơ sở dữ liệu mẫu để minh họa

A] Sử dụng mệnh đề ORDER BY của MySQL để sắp xếp kết quả được đặt theo một cột ví dụ

Truy vấn sau sử dụng mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 để sắp xếp khách hàng theo họ của họ theo thứ tự tăng dần

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]

đầu ra

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]

Nếu bạn muốn sắp xếp khách hàng theo họ theo thứ tự giảm dần, bạn sử dụng

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5 sau cột

ORDER BY column1 ASC, column2 DESC;

Code language: SQL [Structured Query Language] [sql]
2 trong mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 như được hiển thị trong truy vấn sau

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname DESC;

Code language: SQL [Structured Query Language] [sql]

đầu ra

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
0

B] Sử dụng mệnh đề ORDER BY của MySQL để sắp xếp tập hợp kết quả theo nhiều cột ví dụ

Nếu bạn muốn sắp xếp khách hàng theo họ theo thứ tự giảm dần và sau đó theo tên theo thứ tự tăng dần, bạn chỉ định cả  

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5 và

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4 trong các cột tương ứng này như sau

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1

đầu ra

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
2

Trong ví dụ này, mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8  sắp xếp tập kết quả theo họ theo thứ tự giảm dần trước rồi sắp xếp tập kết quả đã sắp xếp theo tên theo thứ tự tăng dần để tạo ra tập kết quả cuối cùng

C] Sử dụng mệnh đề ORDER BY của MySQL để sắp xếp một tập hợp kết quả theo một ví dụ về biểu thức

Xem bảng

ORDER BY column1 ASC, column2 DESC;

Code language: SQL [Structured Query Language] [sql]
7 sau đây từ cơ sở dữ liệu mẫu

Truy vấn sau đây chọn các mục hàng đặt hàng từ bảng

ORDER BY column1 ASC, column2 DESC;

Code language: SQL [Structured Query Language] [sql]
7. Nó tính toán tổng phụ cho từng mục hàng và sắp xếp tập kết quả dựa trên tổng phụ

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
3

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4

Để làm cho truy vấn dễ đọc hơn, bạn có thể gán biểu thức trong mệnh đề

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1 một bí danh cột và sử dụng bí danh cột đó trong mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 như được hiển thị trong truy vấn sau

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
6

Trong ví dụ này, chúng tôi sử dụng

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
1 làm bí danh cột cho biểu thức 

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
2 và sắp xếp tập hợp kết quả theo bí danh

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
1

Vì MySQL đánh giá mệnh đề

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1 trước mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8, nên bạn có thể sử dụng bí danh cột được chỉ định trong mệnh đề

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
1 trong mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8

Sử dụng mệnh đề ORDER BY của MySQL để sắp xếp dữ liệu bằng danh sách tùy chỉnh

Hàm

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
8 có cú pháp như sau

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
7

Hàm

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
8 trả về vị trí của str trong danh sách str1, str2, …. Nếu str không có trong danh sách, hàm

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
8 trả về 0. Ví dụ: truy vấn sau đây trả về 1 vì vị trí của chuỗi 'A' là vị trí đầu tiên trong danh sách

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]
1,

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]
2 và

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]
3

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
8

đầu ra

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
9

Và ví dụ sau trả về 2

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
0

đầu ra

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
1

Hãy lấy một ví dụ thực tế hơn

Xem bảng

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]
4 sau đây từ cơ sở dữ liệu mẫu

Giả sử bạn muốn sắp xếp các đơn đặt hàng dựa trên trạng thái của chúng theo thứ tự sau

  • Đang tiến hành
  • Đang chờ
  • Đã hủy
  • giải quyết
  • tranh chấp
  • vận chuyển

Để làm điều này, bạn có thể sử dụng hàm

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
8 để ánh xạ từng trạng thái đơn hàng thành một số và sắp xếp kết quả theo kết quả của hàm

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname;

Code language: SQL [Structured Query Language] [sql]
8

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
2

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
3

ĐẶT HÀNG MySQL THEO và NULL

Trong MySQL,

+-----------------+------------------+ | contactLastname | contactFirstname | +-----------------+------------------+ | Accorti | Paolo | | Altagar,G M | Raanan | | Andersen | Mel | | Anton | Carmen | | Ashworth | Rachel | | Barajas | Miguel | ...

Code language: plaintext [plaintext]
7 xuất hiện trước các giá trị không NULL. Do đó, khi bạn đặt mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 với tùy chọn

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
4, thì

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname DESC;

Code language: SQL [Structured Query Language] [sql]
0 sẽ xuất hiện đầu tiên trong tập kết quả

Ví dụ: truy vấn sau sử dụng mệnh đề

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 để sắp xếp nhân viên theo các giá trị trong cột

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname DESC;

Code language: SQL [Structured Query Language] [sql]
2

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
4

đầu ra

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
5

Tuy nhiên, nếu bạn sử dụng

ORDER BY column1 DESC;

Code language: SQL [Structured Query Language] [sql]
8 với tùy chọn

ORDER BY column1 ASC;

Code language: SQL [Structured Query Language] [sql]
5, thì

SELECT contactLastname, contactFirstname FROM customers ORDER BY contactLastname DESC;

Code language: SQL [Structured Query Language] [sql]
0 sẽ xuất hiện cuối cùng trong tập hợp kết quả. Ví dụ

Chủ Đề