如何在 MySQL 中获取两列值中的最大值?

mysqlmysqli database

为了在 MySQL 中获取两列值中的最大值,您需要使用 GREATEST() 函数。语法如下:

select greatest(yourColumnName1,yourColumnName2) AS anyAliasName from yourTableName; 

首先我们创建一个表:

mysql> create table DemoTable
(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Number1 int,
   Number2 int
);
Query OK, 0 rows affected (0.63 sec)

下面是使用 insert 命令在表中插入一些记录的查询:

mysql> insert into DemoTable(Number1,Number2) values(1000,10000);
Query OK, 1 row affected (0.49 sec)
mysql> insert into DemoTable(Number1,Number2) values(600,900);
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable(Number1,Number2) values(12,9);
Query OK, 1 row affected (0.33 sec)
mysql> insert into DemoTable(Number1,Number2) values(19,56);
Query OK, 1 row affected (0.17 sec)

以下是使用 select 命令显示表中记录的查询:

mysql> select *from DemoTable;

这将产生以下输出:

+----+---------+---------+
| Id | Number1 | Number2 |
+----+---------+---------+
|  1 | 1000    | 10000   |
|  2 | 600     | 900     |
|  3 | 12      | 9       |
|  4 | 19      | 56      |
+----+---------+---------+
4 rows in set (0.00 sec)

以下是在 MySQL 中获取两列值中最大值的查询:

mysql> select greatest(Number1,Number2) AS MAXIMUM_NUMBER_OF_TWO_COLUMNS from DemoTable;

这将产生以下输出:

+-------------------------------+
| MAXIMUM_NUMBER_OF_TWO_COLUMNS |
+-------------------------------+
| 10000                         |
| 900                           |
| 12                            |
| 56                            |
+-------------------------------+
4 rows in set (0.00 sec)

上面,您可以看到,在 1000 和 10000 中,显示的值为 10000,即最大值。以锯齿状方式,它适用于其他值,即 600 和 900 中的 900。


相关文章