Computer >> Máy Tính >  >> Lập trình >> MySQL

Truy vấn MySQL để chọn các hàng ngoại trừ hàng đầu tiên theo thứ tự giảm dần?

Đầu tiên chúng ta hãy tạo một bảng -

mysql> create table DemoTable
   -> (
   -> Amount int
   -> );
Query OK, 0 rows affected (0.50 sec)

Chèn một số bản ghi vào bảng bằng lệnh chèn -

mysql> insert into DemoTable values(10);
Query OK, 1 row affected (0.17 sec)

mysql> insert into DemoTable values(20);
Query OK, 1 row affected (0.11 sec)

mysql> insert into DemoTable values(30);
Query OK, 1 row affected (0.10 sec)

mysql> insert into DemoTable values(40);
Query OK, 1 row affected (0.15 sec)

Hiển thị tất cả các bản ghi từ bảng bằng câu lệnh select -

mysql> select *from DemoTable;

Đầu ra

+--------+
| Amount |
+--------+
|     10 |
|     20 |
|     30 |
|     40 |
+--------+
4 rows in set (0.00 sec)

Sau đây là truy vấn để chọn các hàng ngoại trừ hàng đầu tiên theo thứ tự giảm dần -

mysql> select *from DemoTable WHERE Amount NOT IN (SELECT MAX(Amount) from DemoTable) ORDER BY Amount DESC;

Đầu ra

+--------+
| Amount |
+--------+
|     30 |
|     20 |
|     10 |
+--------+
3 rows in set (0.05 sec)