V MariaDB LEAST()
je vestavěná funkce, která vrací nejmenší (tj. nejmenší/minimální) argument ze svého seznamu argumentů.
Chcete-li získat největší hodnotu, použijte GREATEST()
.
Syntaxe
Syntaxe vypadá takto:
LEAST(value1,value2,...)
Kde value1,value2,…
jsou dva nebo více argumentů, pro které má být vrácena nejmenší/minimální hodnota.
Příklad
Zde je příklad:
SELECT LEAST(3, 8);
Výsledek:
+-------------+ | LEAST(3, 8) | +-------------+ | 3 | +-------------+
Zde je další příklad, který používá více argumentů:
SELECT LEAST(10, 7, 9, 12, 80, 8, 14);
Výsledek:
+--------------------------------+ | LEAST(10, 7, 9, 12, 80, 8, 14) | +--------------------------------+ | 7 | +--------------------------------+
Výrazy
Argumenty mohou obsahovat výrazy jako je tento:
SELECT LEAST(2 * 3, 1 * 3);
Výsledek:
+---------------------+ | LEAST(2 * 3, 1 * 3) | +---------------------+ | 3 | +---------------------+
Řetězce
Argumenty nemusí být číselné. Zde je například srovnání řetězců:
SELECT LEAST('a', 'b', 'c');
Výsledek:
+----------------------+ | LEAST('a', 'b', 'c') | +----------------------+ | a | +----------------------+
Data
Zde je srovnání datových řetězců:
SELECT LEAST('2020-01-01', '2021-01-01');
Výsledek:
+-----------------------------------+ | LEAST('2020-01-01', '2021-01-01') | +-----------------------------------+ | 2020-01-01 | +-----------------------------------+
Smíšené typy
Dokumentace MariaDB uvádí, že pokud je některý argument řetězcem rozlišujícím malá a velká písmena, argumenty jsou porovnávány jako řetězce rozlišující malá a velká písmena. Můžete však zjistit, že míchání typů může přinést neočekávané výsledky a varování.
Příklad:
SELECT LEAST('Cat', 10);
Výsledek:
+------------------+ | LEAST('Cat', 10) | +------------------+ | 0 | +------------------+ 1 row in set, 1 warning (0.000 sec)
Zkontrolujte varování:
SHOW WARNINGS;
Výsledek:
+---------+------+-----------------------------------------+ | Level | Code | Message | +---------+------+-----------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Cat' | +---------+------+-----------------------------------------+
Nulové argumenty
LEAST()
vrátí null
pokud je nějaký argument null
:
SELECT LEAST(1, null, 3);
Výsledek:
+-------------------+ | LEAST(1, null, 3) | +-------------------+ | NULL | +-------------------+
Chybí argumenty
Volání LEAST()
s nesprávným počtem argumentů nebo bez jakýchkoli argumentů vede k chybě:
SELECT LEAST();
Výsledek:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'
A:
SELECT LEAST(10);
Výsledek:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LEAST'