I PostgreSQL, MIN()
funktionen beräknar minimum av de icke-null-ingångsvärden och returnerar resultatet.
Den här funktionen kan användas på valfri numerisk, sträng, datum/tid eller enumtyp, såväl som inet
, interval
, money
, oid
, pg_lsn
, tid
, och matriser av någon av dessa typer.
Exempel
Här är ett snabbt exempel för att visa hur det fungerar:
SELECT MIN(productprice)
FROM products;
Resultat:
9.99
I det här fallet, productprice
är en kolumn i products
tabell.
För att ge detta lite mer sammanhang, här är en ögonblicksbild av tabellen:
+----------+---------------------------------+--------------+ | 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 | +----------+---------------------------------+--------------+
Vi kan se productprice
kolumn som vi fick minimivärdet för i vårt exempel.
Min faktiska tabell innehåller fler kolumner, men det här visar dig kolumnen och dess sammanhang i tabellen.
NULL
Värden
MIN()
funktionen ignorerar någon NULL
värden. I vår exempeltabell ovan har släggan fått NULL
i dess productprice
kolumn, men det ignorerades i vår MIN()
resultat.
Filtrerade resultat
MIN()
funktionen fungerar på raderna som returneras av frågan. Så om du filtrerar resultaten, utdata från MIN()
kommer att återspegla det.
Låt oss filtrera resultaten:
SELECT MIN(productprice)
FROM products
WHERE vendorid = 1001;
Resultat:
11.99
Datetime-värden
MIN()
funktionen kan användas på datetime-värden:
Anta att vi har en tabell som heter pets
med följande data:
+-------+---------+------------+ | 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 | +-------+---------+------------+
Vi kan få minimivärdet från dob
kolumn, så här:
SELECT MIN(dob)
FROM pets;
Resultat:
2018-10-01
Teckendata
När den används med teckendatakolumner, MIN()
hittar det värde som är lägst i sorteringssekvensen.
Exempel:
SELECT MIN(petname)
FROM pets;
Resultat:
Bark