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

Truy vấn MySQL để hiển thị các bản ghi được sắp xếp theo sự khác biệt số?

Sử dụng ORDER BY và đặt sự khác biệt để hiển thị các bản ghi được sắp xếp theo sự khác biệt số. Sau đây là cú pháp -

select *from yourTableName
order by (yourIntegerColumnName1 - yourIntegerColumnName2);

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

mysql> create table DemoTable1313
-> (
-> Name varchar(20),
-> Score1 int,
-> Score2 int
-> );
Query OK, 0 rows affected (3.48 sec)

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

mysql> insert into DemoTable1313 values('Chris',40,60);
Query OK, 1 row affected (0.38 sec)
mysql> insert into DemoTable1313 values('David',70,50);
Query OK, 1 row affected (0.16 sec)
mysql> insert into DemoTable1313 values('Adam',35,30);
Query OK, 1 row affected (0.18 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 DemoTable1313;

Đầu ra

+-------+--------+--------+
| Name  | Score1 | Score2 |
+-------+--------+--------+
| Chris |     40 |     60 |
| David |     70 |     50 |
| Adam  |     35 |     30 |
+-------+--------+--------+
3 rows in set (0.00 sec)

Sau đây là truy vấn để sắp xếp thứ tự theo hiệu số -

mysql> select *from DemoTable1313
-> order by (Score1-Score2);

Đầu ra

+-------+--------+--------+
| Name | Score1  | Score2 |
+-------+--------+--------+
| Chris | 40     |    60  |
| Adam  | 35     |    30  |
| David | 70     |    50  |
+-------+--------+--------+
3 rows in set (0.00 sec)