sql >> Database teknologi >  >> RDS >> Mysql

Funktionen MySQL LEAST() – Find det mindste argument i en liste over argumenter

 MySQL LEAST() funktion er en sammenligningsfunktion, der returnerer den mindste værdi fra en liste over værdier.

Listen over værdier er angivet som flere argumenter. Så med andre ord, LEAST() returnerer argumentet med minimum værdi fra en liste over argumenter.

Syntaks

Syntaksen for LEAST() går sådan her:

LEAST(value1,value2,...)

Hvert argument er adskilt af et komma. Denne funktion sammenligner dem alle og returnerer den med den mindste værdi.

Eksempel 1 – Sammenligning af tal

Hvis alle argumenter er heltal, sammenlignes de som heltal.

SELECT LEAST(12, 120, 2400) AS 'Result';

Resultat:

+--------+
| Result |
+--------+
|     12 |
+--------+

Hvis mindst et argument er dobbelt præcision, sammenlignes de som dobbeltpræcisionsværdier. Ellers, hvis mindst ét ​​argument er en DECIMAL værdi, sammenlignes de som DECIMAL værdier.

SELECT LEAST(12, 120.00, 2400) AS 'Result';

Resultat:

+--------+
| Result |
+--------+
|  12.00 |
+--------+

Se nedenfor for de nøjagtige regler for bestemmelse af returværdien.

Eksempel 2 – Sammenligning af strenge

Her er et eksempel på sammenligning af strenge.

SELECT LEAST('a', 'b', 'c') AS 'Result';

Resultat:

+--------+
| Result |
+--------+
| a      |
+--------+

Her er endnu en:

SELECT LEAST('Aardvark', 'Dog', 'Rat') AS 'Result';

Resultat:

+----------+
| Result   |
+----------+
| Aardvark |
+----------+

Eksempel 3 – NULL-værdier

Hvis nogen af ​​argumenterne er NULL , resultatet er NULL .

SELECT LEAST('a', NULL, 'c') AS 'Result';

Resultat:

+--------+
| Result |
+--------+
| NULL   |
+--------+

Sammenligningsregler

Visse regler anvendes, når det bestemmes, hvad returværdien vil være. Disse regler er som følger:

  • Hvis et argument er NULL , resultatet er NULL . Ingen sammenligning er nødvendig.
  • Hvis alle argumenter har et heltal, sammenlignes de som heltal.
  • Hvis mindst ét ​​argument er dobbelt præcision, sammenlignes de som dobbeltpræcisionsværdier. Ellers, hvis mindst ét ​​argument er en DECIMAL værdi, sammenlignes de som DECIMAL værdier.
  • Hvis argumenterne omfatter en blanding af tal og strenge, sammenlignes de som tal.
  • Hvis et argument er en ikke-binær (tegn)streng, sammenlignes argumenterne som ikke-binære strenge.
  • I alle andre tilfælde sammenlignes argumenterne som binære strenge.


  1. Kan nogen forklare, hvad MERGE-erklæringen virkelig gør i Oracle?

  2. PostgreSQL:hvordan konverteres fra Unix-epoke til dato?

  3. MySQL/PHP-fejl:[2002] Kun én brug af hver socket-adresse (protokol/netværksadresse/port) er normalt tilladt

  4. LD_DEBUG miljøvariablen