In PostgreSQL is de MAX() functie berekent het maximum van de niet-null invoerwaarden en retourneert het resultaat.
Deze functie kan worden gebruikt voor elk numeriek, tekenreeks-, datum/tijd- of opsommingstype, evenals voor inet , interval , money , oid , pg_lsn , tid , en arrays van elk van deze typen.
Voorbeeld
Hier is een snel voorbeeld om te laten zien hoe het werkt:
SELECT MAX(productprice)
FROM products; Resultaat:
245.00
In dit geval productprice is een kolom in de products tafel.
Om dit wat meer context te geven, is hier een momentopname van de tabel:
+----------+---------------------------------+--------------+ | 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 | +----------+---------------------------------+--------------+
We kunnen de productprice . zien kolom waarvoor we de maximale waarde in ons voorbeeld hebben gekregen.
Mijn werkelijke tabel bevat meer kolommen, maar dit toont u de kolom en de context binnen de tabel.
NULL Waarden
De MAX() functie negeert elke NULL waarden. In onze voorbeeldtabel hierboven heeft de voorhamer NULL in zijn productprice kolom, maar dat werd genegeerd in onze MAX() voorbeeld.
Gefilterde resultaten
De MAX() functie werkt op de rijen die door de query worden geretourneerd. Dus als u de resultaten filtert, wordt het resultaat van MAX() zal dat weerspiegelen.
Laten we de resultaten filteren:
SELECT MAX(productprice)
FROM products
WHERE vendorid = 1001; Resultaat:
25.99
Datum/tijd-waarden
De MAX() functie kan worden gebruikt op datetime-waarden:
Stel dat we een tabel hebben met de naam pets met de volgende gegevens:
+-------+---------+------------+ | 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 | +-------+---------+------------+
We kunnen de maximale waarde halen uit de dob kolom, zoals deze:
SELECT MAX(dob)
FROM pets; Resultaat:
2020-11-28
Karaktergegevens
Indien gebruikt met karaktergegevenskolommen, MAX() vindt de waarde die het hoogst is in de sorteervolgorde.
Voorbeeld:
SELECT MAX(petname)
FROM pets; Resultaat:
Wag