Dans MariaDB, LEAST() est une fonction intégrée qui renvoie l'argument le plus petit (c'est-à-dire le plus petit/le plus petit) de sa liste d'arguments.
Pour obtenir le meilleur valeur, utilisez GREATEST() .
Syntaxe
La syntaxe ressemble à ceci :
LEAST(value1,value2,...)
Où value1,value2,… est deux arguments ou plus pour lesquels renvoyer la valeur la plus petite/minimale.
Exemple
Voici un exemple :
SELECT LEAST(3, 8); Résultat :
+-------------+ | LEAST(3, 8) | +-------------+ | 3 | +-------------+
Voici un autre exemple qui utilise plus d'arguments :
SELECT LEAST(10, 7, 9, 12, 80, 8, 14); Résultat :
+--------------------------------+ | LEAST(10, 7, 9, 12, 80, 8, 14) | +--------------------------------+ | 7 | +--------------------------------+
Expressions
Les arguments peuvent inclure des expressions telles que :
SELECT LEAST(2 * 3, 1 * 3); Résultat :
+---------------------+ | LEAST(2 * 3, 1 * 3) | +---------------------+ | 3 | +---------------------+
Chaînes
Les arguments n'ont pas besoin d'être numériques. Par exemple, voici une comparaison de chaînes :
SELECT LEAST('a', 'b', 'c'); Résultat :
+----------------------+
| LEAST('a', 'b', 'c') |
+----------------------+
| a |
+----------------------+ Dates
Voici une comparaison des chaînes de date :
SELECT LEAST('2020-01-01', '2021-01-01'); Résultat :
+-----------------------------------+
| LEAST('2020-01-01', '2021-01-01') |
+-----------------------------------+
| 2020-01-01 |
+-----------------------------------+ Types mixtes
La documentation MariaDB indique que si un argument est une chaîne sensible à la casse, les arguments sont comparés en tant que chaînes sensibles à la casse. Cependant, vous pouvez constater que le mélange de types peut produire des résultats inattendus et un avertissement.
Exemple :
SELECT LEAST('Cat', 10); Résultat :
+------------------+
| LEAST('Cat', 10) |
+------------------+
| 0 |
+------------------+
1 row in set, 1 warning (0.000 sec) Vérifiez l'avertissement :
SHOW WARNINGS; Résultat :
+---------+------+-----------------------------------------+ | Level | Code | Message | +---------+------+-----------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Cat' | +---------+------+-----------------------------------------+
Arguments nuls
LEAST() renvoie null si un argument est null :
SELECT LEAST(1, null, 3); Résultat :
+-------------------+ | LEAST(1, null, 3) | +-------------------+ | NULL | +-------------------+
Arguments manquants
Appel de LEAST() avec le mauvais nombre d'arguments, ou sans aucun argument entraîne une erreur :
SELECT LEAST(); Résultat :
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'
Et :
SELECT LEAST(10); Résultat :
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'