Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Funkcja MySQL GREATEST() – znajdź największy argument na liście argumentów

MySQL GREATEST() function to funkcja porównująca, która zwraca największą wartość z listy wartości.

Lista wartości jest dostarczana jako wiele argumentów. Innymi słowy, GREATEST() zwraca argument o maksymalnej wartości z listy argumentów.

Składnia

Składnia GREATEST() idzie tak:

GREATEST(value1,value2,...)

Każdy argument jest oddzielony przecinkiem. Ta funkcja porównuje je wszystkie i zwraca tę z największą wartością.

Przykład 1 – Porównanie liczb

Jeśli wszystkie argumenty są liczbami całkowitymi, są porównywane jako liczby całkowite.

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

Wynik:

+--------+
| Result |
+--------+
|   2400 |
+--------+

Jeśli co najmniej jeden argument ma podwójną precyzję, są one porównywane jako wartości podwójnej precyzji. W przeciwnym razie, jeśli przynajmniej jeden argument to DECIMAL wartość, są porównywane jako DECIMAL wartości.

SELECT GREATEST(12.00, 120, 2400) AS 'Result';

Wynik:

+---------+
| Result  |
+---------+
| 2400.00 |
+---------+

Poniżej znajdziesz dokładne zasady określania wartości zwrotu.

Przykład 2 – Porównanie ciągów

Oto przykład porównywania ciągów.

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

Wynik:

+--------+
| Result |
+--------+
| c      |
+--------+

Oto kolejny:

SELECT GREATEST('Cat', 'Dogg', 'Rat') AS 'Result';

Wynik:

+--------+
| Result |
+--------+
| Rat    |
+--------+

Przykład 3 – wartości NULL

Jeśli którykolwiek z argumentów jest NULL , wynik to NULL .

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

Wynik:

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

Zasady porównawcze

Przy ustalaniu, jaka będzie wartość zwrotu, stosowane są pewne zasady. Te zasady są następujące:

  • Jeśli jakikolwiek argument ma wartość NULL , wynik to NULL . Żadne porównanie nie jest potrzebne.
  • Jeśli wszystkie argumenty są wartościami całkowitymi, są porównywane jako liczby całkowite.
  • Jeśli przynajmniej jeden argument ma podwójną precyzję, są one porównywane jako wartości podwójnej precyzji. W przeciwnym razie, jeśli przynajmniej jeden argument to DECIMAL wartość, są porównywane jako DECIMAL wartości.
  • Jeśli argumenty składają się z liczb i ciągów, są one porównywane jako liczby.
  • Jeśli jakikolwiek argument jest niebinarnym (znakowym) łańcuchem, argumenty są porównywane jako niebinarne łańcuchy.
  • We wszystkich innych przypadkach argumenty są porównywane jako ciągi binarne.


  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 zrobić zbiorcze wstawianie w mySQL za pomocą node.js?

  2. Czy możesz podzielić/rozbić pole w zapytaniu MySQL?

  3. Zdefiniuj zmienną w ramach wyboru i użyj jej w ramach tego samego wyboru

  4. Zmień kolejność / zresetuj klucz główny automatycznego przyrostu

  5. Mysql:Wybierz wiersze z tabeli, których nie ma w innej