Mysql
 sql >> Base de données >  >> RDS >> Mysql

Fonction MySQL LEAST() - Trouver le plus petit argument dans une liste d'arguments

Le MySQL LEAST() est une fonction de comparaison qui renvoie la plus petite valeur d'une liste de valeurs.

La liste de valeurs est fournie sous forme d'arguments multiples. Donc, en d'autres termes, LEAST() renvoie l'argument de valeur minimale à partir d'une liste d'arguments.

Syntaxe

La syntaxe de LEAST() va comme ceci :

LEAST(value1,value2,...)

Chaque argument est séparé par une virgule. Cette fonction les compare tous et renvoie celui avec la plus petite valeur.

Exemple 1 – Comparer des nombres

Si tous les arguments sont des entiers, ils sont comparés comme des entiers.

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

Résultat :

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

Si au moins un argument est en double précision, ils sont comparés en tant que valeurs en double précision. Sinon, si au moins un argument est un DECIMAL valeur, ils sont comparés en tant que DECIMAL valeurs.

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

Résultat :

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

Voir ci-dessous les règles exactes pour déterminer la valeur de retour.

Exemple 2 – Comparer des chaînes

Voici un exemple de comparaison de chaînes.

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

Résultat :

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

En voici une autre :

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

Résultat :

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

Exemple 3 – Valeurs NULL

Si l'un des arguments est NULL , le résultat est NULL .

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

Résultat :

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

Règles de comparaison

Certaines règles sont appliquées lors de la détermination de la valeur de retour. Ces règles sont les suivantes :

  • Si un argument est NULL , le résultat est NULL . Aucune comparaison n'est nécessaire.
  • Si tous les arguments ont une valeur entière, ils sont comparés en tant qu'entiers.
  • Si au moins un argument est en double précision, ils sont comparés en tant que valeurs en double précision. Sinon, si au moins un argument est un DECIMAL valeur, ils sont comparés en tant que DECIMAL valeurs.
  • Si les arguments comprennent un mélange de nombres et de chaînes, ils sont comparés en tant que nombres.
  • Si un argument est une chaîne non binaire (caractère), les arguments sont comparés en tant que chaînes non binaires.
  • Dans tous les autres cas, les arguments sont comparés en tant que chaînes binaires.