MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

Jak działa GREATEST() w MariaDB

W MariaDB, GREATEST() jest wbudowaną funkcją, która zwraca największy (tj. największy/o maksymalnej wartości) argument ze swojej listy argumentów.

Aby zwrócić minimum argument o wartości, użyj LEAST() .

Składnia

Składnia wygląda tak:

GREATEST(value1,value2,...)

Gdzie value1,value2,… to dwa lub więcej argumentów, dla których zwrócić najwięcej.

Przykład

Oto przykład:

SELECT GREATEST(3, 8);

Wynik:

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

Oto kolejny przykład z większą liczbą argumentów:

SELECT GREATEST(3, 8, 9, 12, 80, 7, 4);

Wynik:

+---------------------------------+
| GREATEST(3, 8, 9, 12, 80, 7, 4) |
+---------------------------------+
|                              80 |
+---------------------------------+

Wyrażenia

Argumenty mogą zawierać wyrażenia takie jak:

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

Wynik:

+------------------------+
| GREATEST(2 * 3, 1 * 3) |
+------------------------+
|                      6 |
+------------------------+

Struny

Argumenty nie muszą być liczbowe. Na przykład, oto porównanie ciągów:

SELECT GREATEST('a', 'b', 'z');

Wynik:

+-------------------------+
| GREATEST('a', 'b', 'z') |
+-------------------------+
| z                       |
+-------------------------+

Daty

Oto porównanie ciągów dat:

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

Wynik:

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

Typy mieszane

Dokumentacja MariaDB stwierdza, że ​​jeśli jakikolwiek argument jest ciągiem rozróżniającym wielkość liter, argumenty są porównywane jako ciągi rozróżniające wielkość liter. Jednak może się okazać, że mieszanie typów może dać nieoczekiwane wyniki i ostrzeżenie.

Przykład:

SELECT GREATEST('Cat', 10);

Wynik:

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

Sprawdź ostrzeżenie:

SHOW WARNINGS;

Wynik:

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

Argumenty zerowe

GREATEST() zwraca null jeśli jakikolwiek argument jest null :

SELECT GREATEST(1, null, 3);

Wynik:

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

Brakujące argumenty

Wywołanie GREATEST() z niewłaściwą liczbą argumentów lub bez żadnych argumentów powoduje błąd:

SELECT GREATEST();

Wynik:

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

Oraz:

SELECT GREATEST(10);

Wynik:

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak zainstalować Lighttpd z PHP, MariaDB i PhpMyAdmin w Ubuntu?

  2. 3 sposoby na oddzielenie roku, miesiąca i dnia od daty w MariaDB

  3. Jak wdrożyć serwer MariaDB w kontenerze Docker

  4. Instalowanie MariaDB 10.1 w Debianie Jessie i uruchamianie różnych zapytań MariaDB

  5. Jak działa GREATEST() w MariaDB