I PostgreSQL er MIN()
funktion beregner minimum af inputværdier, der ikke er nul, og returnerer resultatet.
Denne funktion kan bruges på enhver numerisk, streng, dato/klokkeslæt eller enum-type, såvel som inet
, interval
, money
, oid
, pg_lsn
, tid
, og arrays af enhver af disse typer.
Eksempel
Her er et hurtigt eksempel for at demonstrere, hvordan det virker:
SELECT MIN(productprice)
FROM products;
Resultat:
9.99
I dette tilfælde productprice
er en kolonne i products
bord.
For at give dette lidt mere kontekst er her et øjebliksbillede af 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
kolonne, som vi fik minimumsværdien for i vores eksempel.
Min faktiske tabel indeholder flere kolonner, men dette viser dig kolonnen og dens kontekst i tabellen.
NULL
Værdier
MIN()
funktionen ignorerer enhver NULL
værdier. I vores eksempeltabel ovenfor har forhammeren fået NULL
i dens productprice
kolonne, men det blev ignoreret i vores MIN()
resultater.
Filtrerede resultater
MIN()
funktionen fungerer på de rækker, der returneres af forespørgslen. Så hvis du filtrerer resultaterne, outputtet af MIN()
vil afspejle det.
Lad os filtrere resultaterne:
SELECT MIN(productprice)
FROM products
WHERE vendorid = 1001;
Resultat:
11.99
Dato-tidsværdier
MIN()
funktionen kan bruges på datetime-værdier:
Antag, at vi har en tabel kaldet pets
med følgende 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å minimumsværdien fra dob
kolonne, som denne:
SELECT MIN(dob)
FROM pets;
Resultat:
2018-10-01
Tegndata
Når det bruges sammen med tegndatakolonner, MIN()
finder den værdi, der er lavest i sorteringssekvensen.
Eksempel:
SELECT MIN(petname)
FROM pets;
Resultat:
Bark