В PostgreSQL, MAX() функцията изчислява максимума от ненулевите входни стойности и връща резултата.
Тази функция може да се използва за всеки тип число, низ, дата/час или изброяване, както и inet , interval , money , oid , pg_lsn , tid и масиви от всеки от тези типове.
Пример
Ето един бърз пример, за да демонстрирате как работи:
SELECT MAX(productprice)
FROM products; Резултат:
245.00
В този случай productprice е колона в products маса.
За да придадете на това малко повече контекст, ето моментна снимка на таблицата:
+----------+---------------------------------+--------------+ | vendorid | productname | productprice | +----------+---------------------------------+--------------+ | 1001 | Left handed screwdriver | 25.99 | | 1001 | Right handed screwdriver | 25.99 | | 1001 | Long Weight (blue) | 14.75 | | 1001 | Long Weight (green) | 11.99 | | 1002 | Sledge Hammer | NULL | | 1003 | Chainsaw | 245.00 | | 1003 | Straw Dog Box | 55.99 | | 1004 | Bottomless Coffee Mugs (4 Pack) | 9.99 | +----------+---------------------------------+--------------+
Можем да видим productprice колона, за която получихме максималната стойност в нашия пример.
Действителната ми таблица съдържа повече колони, но това ви показва колоната и нейния контекст в таблицата.
NULL Стойности
MAX() функцията игнорира всеки NULL стойности. В нашата примерна таблица по-горе чукът има NULL в неговата productprice колона, но това беше игнорирано в нашия MAX() пример.
Филтрирани резултати
MAX() функцията работи с редовете, върнати от заявката. Така че, ако филтрирате резултатите, резултатът от MAX() ще отрази това.
Нека филтрираме резултатите:
SELECT MAX(productprice)
FROM products
WHERE vendorid = 1001; Резултат:
25.99
Стойности за дата и час
MAX() функцията може да се използва за стойности за дата и час:
Да предположим, че имаме таблица, наречена pets със следните данни:
+-------+---------+------------+ | petid | petname | dob | +-------+---------+------------+ | 1 | Fluffy | 2020-11-20 | | 2 | Fetch | 2019-08-16 | | 3 | Scratch | 2018-10-01 | | 4 | Wag | 2020-03-15 | | 5 | Tweet | 2020-11-28 | | 6 | Fluffy | 2020-09-17 | | 7 | Bark | NULL | | 8 | Meow | NULL | +-------+---------+------------+
Можем да получим максималната стойност от dob колона, както следва:
SELECT MAX(dob)
FROM pets; Резултат:
2020-11-28
Данни за знаци
Когато се използва с колони с данни за знаци, MAX() намира стойността, която е най-висока в последователността за сортиране.
Пример:
SELECT MAX(petname)
FROM pets; Резултат:
Wag