在單個 MySQL 查詢中比較兩列以獲取一行?


為此,你可以使用 ORDER BY 子句。讓我們首先建立一個表 −

mysql> create table DemoTable
-> (
-> Num1 int,
-> Num2 int
-> );
Query OK, 0 rows affected (0.61 sec)

使用 insert 命令向表中插入一些記錄 −

mysql> insert into DemoTable values(60,249);
Query OK, 1 row affected (0.20 sec)

mysql> insert into DemoTable values(59,250);
Query OK, 1 row affected (0.12 sec)

使用 select 語句從表中顯示所有記錄 −

mysql> select *from DemoTable;

輸出

這將產生以下輸出 −

+------+------+
| Num1 | Num2 |
+------+------+
| 60   | 249  |
| 59   | 250  |
+------+------+
2 rows in set (0.00 sec)

以下是查詢以比較兩個列的最大值並獲取一行 −

mysql> select *from DemoTable
-> order by Num2 DESC,Num1 DESC limit 1;

以下是查詢以比較兩個列的最大值並獲取一行 −

mysql> select *from DemoTable
-> order by Num2 DESC,Num1 DESC limit 1;

輸出

這將產生以下輸出 −

+------+------+
| Num1 | Num2 |
+------+------+
| 59   | 250  |
+------+------+
1 row in set (0.00 sec)

更新於: 30-6-2020

604 次瀏覽

開啟你的 職業生涯

完成教程並獲得認證

開始
廣告