I MySQL er forskellen mellem MIN()
og LEAST()
funktioner er nøjagtig det samme som forskellen mellem MAX()
og GREATEST()
funktioner.
I hvert tilfælde udfører begge funktioner en lignende handling, men de har en anden syntaks.
Syntaks
Syntaksen for MIN()
og LEAST()
går sådan her:
MIN([DISTINCT] expr) [over_clause] LEAST(value1,value2,...)
Så MIN()
funktionen accepterer DISTINCT
søgeord samt en OVER
klausul (og LEAST()
funktionen gør det ikke).
Men den største forskel mellem disse to funktioner er i argumentet/de argumenter, de accepterer. Specifikt:
MIN()
accepterer ét argumentLEAST()
accepterer flere argumenter
Så MIN()
bruges typisk til at returnere minimumværdien i en kolonne i en database. Tabellen kan indeholde mange rækker, men denne funktion returnerer den med minimumsværdien.
LEAST()
på den anden side returnerer argumentet med minimum værdi fra listen over argumenter, der er sendt til det. Så du kan sende 3 argumenter til denne funktion, og den vil returnere den med den mindste værdi.
Eksempel 1 – MIN()-funktionen
Her er et eksempel til at demonstrere MIN()
funktion.
SELECT MIN(Population) AS 'Result' FROM City;
Resultat:
+--------+ | Result | +--------+ | 42 | +--------+
Dette eksempel finder byen med den mindste befolkning fra City
bord. Kolonnen, der indeholder befolkningen for hver by, kaldes Population
.
Hovedpointen ved dette eksempel er, at der kun blev leveret et argument til funktionen, men der blev forespurgt flere rækker.
Hvis du prøver at sende flere argumenter til MIN()
funktion får du en fejl.
Eksempel 2 – MINST()-funktionen
Her er et eksempel til at demonstrere LEAST()
funktion.
SELECT LEAST(1, 5, 9) AS 'Result';
Resultat:
+--------+ | Result | +--------+ | 1 | +--------+
Så i dette tilfælde giver vi tre argumenter. Hvert argument sammenlignes med det andet. Dette er i modsætning til det enkelte argument, der er givet til MIN()
funktion.
Hvis du prøver at sende et enkelt argument til LEAST()
funktion får du en fejl.