sql >> Base de Datos >  >> RDS >> MariaDB

Cómo funciona MENOS() en MariaDB

En MariaDB, LEAST() es una función integrada que devuelve el argumento mínimo (es decir, el más pequeño/de valor mínimo) de su lista de argumentos.

Para obtener lo mejor mejor valor, use GREATEST() .

Sintaxis

La sintaxis es así:

LEAST(value1,value2,...)

Donde value1,value2,… son dos o más argumentos para los cuales devolver el valor más pequeño/mínimo.

Ejemplo

He aquí un ejemplo:

SELECT LEAST(3, 8);

Resultado:

+-------------+
| LEAST(3, 8) |
+-------------+
|           3 |
+-------------+

Aquí hay otro ejemplo que usa más argumentos:

SELECT LEAST(10, 7, 9, 12, 80, 8, 14);

Resultado:

+--------------------------------+
| LEAST(10, 7, 9, 12, 80, 8, 14) |
+--------------------------------+
|                              7 |
+--------------------------------+

Expresiones

Los argumentos pueden incluir expresiones como esta:

SELECT LEAST(2 * 3, 1 * 3);

Resultado:

+---------------------+
| LEAST(2 * 3, 1 * 3) |
+---------------------+
|                   3 |
+---------------------+

Cuerdas

Los argumentos no necesitan ser numéricos. Por ejemplo, aquí hay una comparación de cadenas:

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

Resultado:

+----------------------+
| LEAST('a', 'b', 'c') |
+----------------------+
| a                    |
+----------------------+

Fechas

Aquí hay una comparación de cadenas de fecha:

SELECT LEAST('2020-01-01', '2021-01-01');

Resultado:

+-----------------------------------+
| LEAST('2020-01-01', '2021-01-01') |
+-----------------------------------+
| 2020-01-01                        |
+-----------------------------------+

Tipos mixtos

La documentación de MariaDB establece que si algún argumento es una cadena que distingue entre mayúsculas y minúsculas, los argumentos se comparan como cadenas que distinguen entre mayúsculas y minúsculas. Sin embargo, es posible que la mezcla de tipos produzca resultados inesperados y una advertencia.

Ejemplo:

SELECT LEAST('Cat', 10);

Resultado:

+------------------+
| LEAST('Cat', 10) |
+------------------+
|                0 |
+------------------+
1 row in set, 1 warning (0.000 sec)

Compruebe la advertencia:

SHOW WARNINGS;

Resultado:

+---------+------+-----------------------------------------+
| Level   | Code | Message                                 |
+---------+------+-----------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Cat' |
+---------+------+-----------------------------------------+

Argumentos nulos

LEAST() devuelve null si algún argumento es null :

SELECT LEAST(1, null, 3);

Resultado:

+-------------------+
| LEAST(1, null, 3) |
+-------------------+
|              NULL |
+-------------------+

Argumentos faltantes

Llamando a LEAST() con el número incorrecto de argumentos, o sin ningún argumento da como resultado un error:

SELECT LEAST();

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'

Y:

SELECT LEAST(10);

Resultado:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'