MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Hàm MAX () trong MariaDB

Trong MariaDB, MAX() là một hàm tổng hợp trả về giá trị lớn nhất trong một biểu thức nhất định.

Cú pháp

Cú pháp như sau:

MAX([DISTINCT] expr)

Dữ liệu mẫu

Giả sử chúng ta có một bảng với dữ liệu sau:

SELECT
    VendorId,
    ProductName,
    ProductPrice
FROM Products;

Kết quả:

+----------+---------------------------------+--------------+
| 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 |
+----------+---------------------------------+--------------+

Ví dụ

Chúng tôi có thể sử dụng truy vấn sau để nhận giá tối đa từ bảng đó.

SELECT MAX(ProductPrice)
FROM Products;

Kết quả:

245.00

Trong trường hợp này, thông tin giá được lưu trữ trong ProductPrice và do đó chúng tôi chuyển nó làm đối số cho MAX() hàm, sau đó sẽ tính toán và trả về kết quả.

Kết quả đã lọc

MAX() hàm hoạt động trên các hàng được trả về bởi truy vấn. Vì vậy, nếu bạn lọc kết quả, kết quả là MAX() sẽ phản ánh điều đó.

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

Kết quả:

25.99

Trong trường hợp này, 25,99 là giá tối đa của tất cả các sản phẩm được cung cấp bởi nhà cung cấp được chỉ định.

Dữ liệu ngày / giờ

Bạn có thể sử dụng MAX() về giá trị ngày / giờ.

Giả sử chúng ta có bảng sau:

SELECT PetName, DOB 
FROM Pets;

Kết quả:

+---------+------------+
| 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       |
+---------+------------+

Chúng ta có thể sử dụng MAX() để tìm ngày sinh tối đa (DOB ).

SELECT MAX(DOB)
FROM Pets;

Kết quả:

2020-11-28

Đây sẽ là ngày sinh của thú cưng nhỏ tuổi nhất.

NULL Giá trị

MAX() hàm bỏ qua bất kỳ NULL nào các giá trị. Trong bảng mẫu của chúng tôi ở trên, hai hàng cuối cùng có NULL các giá trị trong DOB của chúng nhưng cột đó đã bị bỏ qua trong MAX() của chúng tôi ví dụ.

Dữ liệu ký tự

Khi được sử dụng với các cột dữ liệu ký tự, MAX() tìm giá trị cao nhất trong chuỗi đối chiếu.

Ví dụ:

SELECT MAX(ProductName)
FROM Products;

Kết quả:

Straw Dog Box

DISTINCT Từ khóa

DISTINCT từ khóa có thể được sử dụng với MAX() tuy nhiên, hàm này tạo ra kết quả giống như việc bỏ qua DISTINCT . Cho phép DISTINCT hàm cho phép MariaDB tuân thủ tiêu chuẩn ISO SQL.

Do đó, chúng ta có thể làm điều này:

SELECT MAX(DISTINCT ProductPrice)
FROM Products;

Kết quả:

245.00

Nhưng nó không ảnh hưởng đến kết quả.

DISTINCT từ khóa có thể rất hữu ích khi được sử dụng với các ngữ cảnh khác (ví dụ:với COUNT() hàm), nhưng nó không có nghĩa khi được sử dụng với MAX() . DISTINCT từ khóa loại bỏ các bản sao, nhưng trong trường hợp MAX() nó sẽ không tạo ra sự khác biệt nào vì MAX() trả về cùng một kết quả bất kể có bao nhiêu hàng có cùng giá trị lớn nhất.

Chức năng của cửa sổ

MAX() có thể được sử dụng cùng với OVER mệnh đề để tạo một hàm cửa sổ.

Xem SQL MAX() Ví dụ cho người mới bắt đầu.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Giải thích về toán tử MariaDB MINUS

  2. 5 chức năng để trích xuất số tuần từ một ngày trong MariaDB

  3. Chức năng Ngày &Giờ của MariaDB (Danh sách đầy đủ)

  4. Cách MONTHNAME () hoạt động trong MariaDB

  5. Lựa chọn công cụ lưu trữ:Aria