sql >> Databáze >  >> RDS >> MariaDB

Jak LEAST() funguje v MariaDB

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'

  1. Jak zacházet s chybou u duplicitních záznamů?

  2. Co je MySQL Workbench?

  3. Jak povolit protokol dotazů MySQL?

  4. LIMIT 10..20 na serveru SQL