Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Sắp xếp theo nhiều cột không hoạt động như mong đợi trong MySQL

Cú pháp để sắp xếp theo nhiều cột:

SELECT * FROM tenBang ORDER BY tenCot1 DESC, tenCot2, tenCot3;

Tạo bảng demo29:

mysql> CREATE TABLE demo29 (
    -> value1 INT,
    -> value2 INT
    -> );

Chèn dữ liệu:

mysql> INSERT INTO demo29 VALUES(10,500);
mysql> INSERT INTO demo29 VALUES(14,400);
mysql> INSERT INTO demo29 VALUES(9,500);
mysql> INSERT INTO demo29 VALUES(13,400);
mysql> INSERT INTO demo29 VALUES(45,500);
mysql> INSERT INTO demo29 VALUES(11,400);

Hiển thị dữ liệu ban đầu:

mysql> SELECT * FROM demo29;

Kết quả:

+--------+--------+
| value1 | value2 |
+--------+--------+
| 10     | 500    |
| 14     | 400    |
| 9      | 500    |
| 13     | 400    |
| 45     | 500    |
| 11     | 400    |
+--------+--------+

Truy vấn sắp xếp theo value2 giảm dần, sau đó value1 tăng dần:

mysql> SELECT * FROM demo29
    -> ORDER BY value2 DESC, value1;

Kết quả mong đợi:

+--------+--------+
| value1 | value2 |
+--------+--------+
| 9      | 500    |
| 10     | 500    |
| 45     | 500    |
| 11     | 400    |
| 13     | 400    |
| 14     | 400    |
+--------+--------+