MariaDB
 sql >> база данни >  >> RDS >> MariaDB

Функция MAX() в MariaDB

В MariaDB, MAX() е агрегатна функция, която връща максималната стойност в даден израз.

Синтаксис

Синтаксисът е така:

MAX([DISTINCT] expr)

Примерни данни

Да предположим, че имаме таблица със следните данни:

SELECT
    VendorId,
    ProductName,
    ProductPrice
FROM Products;

Резултат:

+----------+---------------------------------+--------------+
| VendorId | ProductName                     | ProductPrice |
+----------+---------------------------------+--------------+
|     1001 | Left handed screwdriver         |        25.99 |
|     1001 | Right handed screwdriver        |        25.99 |
|     1001 | Long Weight (blue)              |        14.75 |
|     1001 | Long Weight (green)             |        11.99 |
|     1002 | Sledge Hammer                   |        33.49 |
|     1003 | Chainsaw                        |       245.00 |
|     1003 | Straw Dog Box                   |        55.99 |
|     1004 | Bottomless Coffee Mugs (4 Pack) |         9.99 |
+----------+---------------------------------+--------------+

Пример

Можем да използваме следната заявка, за да получим максималната цена от тази таблица.

SELECT MAX(ProductPrice)
FROM Products;

Резултат:

245.00

В този случай информацията за цената се съхранява в ProductPrice колона и затова предаваме това като аргумент на MAX() функция, която след това изчислява и връща резултата.

Филтрирани резултати

MAX() функцията работи с редовете, върнати от заявката. Така че, ако филтрирате резултатите, резултатът от MAX() ще отрази това.

SELECT MAX(ProductPrice)
FROM Products
WHERE VendorId = 1001;

Резултат:

25.99

В този случай 25,99 е максималната цена от всички продукти, предлагани от посочения доставчик.

Данни за дата/час

Можете да използвате MAX() на стойности за дата/час.

Да предположим, че имаме следната таблица:

SELECT PetName, DOB 
FROM Pets;

Резултат:

+---------+------------+
| PetName | DOB        |
+---------+------------+
| Fluffy  | 2020-11-20 |
| Fetch   | 2019-08-16 |
| Scratch | 2018-10-01 |
| Wag     | 2020-03-15 |
| Tweet   | 2020-11-28 |
| Fluffy  | 2020-09-17 |
| Bark    | NULL       |
| Meow    | NULL       |
+---------+------------+

Можем да използваме MAX() за да намерите максималната дата на раждане (DOB ).

SELECT MAX(DOB)
FROM Pets;

Резултат:

2020-11-28

Това ще бъде датата на раждане на най-младия домашен любимец.

NULL Стойности

MAX() функцията игнорира всеки NULL стойности. В нашата примерна таблица по-горе последните два реда имат NULL стойности в техния DOB колона, но това беше игнорирано в нашия MAX() пример.

Данни за знаци

Когато се използва с колони с данни за знаци, MAX() намира стойността, която е най-висока в последователността за сортиране.

Пример:

SELECT MAX(ProductName)
FROM Products;

Резултат:

Straw Dog Box

DISTINCT Ключова дума

DISTINCT ключовата дума може да се използва с MAX() функция обаче, това дава същия резултат като пропускането на DISTINCT . Разрешаване на DISTINCT функция позволява на MariaDB да спазва стандарта ISO SQL.

Следователно можем да направим това:

SELECT MAX(DISTINCT ProductPrice)
FROM Products;

Резултат:

245.00

Но това не оказва влияние върху резултатите.

DISTINCT ключова дума може да бъде много полезна, когато се използва с друг контекст (напр. с COUNT() функция), но няма значение, когато се използва с MAX() . DISTINCT ключова дума премахва дубликати, но в случай на MAX() няма да има никаква разлика, защото MAX() връща един и същ резултат, независимо от това колко реда споделят една и съща максимална стойност.

Функции на прозореца

MAX() функцията може да се използва във връзка с OVER клауза за създаване на прозоречна функция.

Вижте SQL MAX() За начинаещи за пример.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да добавите число с водещи нули в MariaDB

  2. MariaDB UCASE() Обяснено

  3. MariaDB идва в град близо до вас!

  4. Kerberos за SQLyog от MariaDB Connector/C

  5. Какво е новото в MySQL Galera Cluster 4.0