扫码一下
查看教程更方便
PostgreSQL MAX函数用于在记录集中找出最大值的记录。
创建 COMPANY 表,表中的数据如下
jiyik_db=# SELECT * FROM COMPANY;
id | name | age | address | salary
----+-------+-----+-----------+--------
1 | Paul | 32 | California| 20000
2 | Allen | 25 | Texas | 15000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall| 45000
7 | James | 24 | Houston | 10000
(7 rows)
现在,根据上表,假设您想获取 SALARY 的最大值,那么您只需使用以下命令即可
jiyik_db=# SELECT MAX(salary) FROM COMPANY;
上面给出的 PostgreSQL 语句将产生以下结果
max
-------
85000
(1 row)
您可以使用GROUP BY子句找到每个名称的最大值的所有记录,如下所示
testdb =# SELECT id , name , MAX ( salary ) FROM COMPANY GROUP BY id , name ;
结果如下
id | name | max
----+-------+-------
4 | Mark | 65000
7 | James | 10000
6 | Kim | 45000
3 | Teddy | 20000
2 | Allen | 15000
5 | David | 85000
1 | Paul | 20000
同样我们也可以使用MIN函数和MAX()分别找出最小值和最大值。试试下面的例子
jiyik_db=# SELECT MIN(salary), MAX(salary) max FROM company;
结果如下
min | max
-------+-------
10000 | 85000
(1 row)