Tóm tắt :trong hướng dẫn này, bạn sẽ học cách sử dụng SQLite MAX
hàm để nhận giá trị lớn nhất của tất cả các giá trị trong một nhóm.
Giới thiệu về SQLite MAX
chức năng
SQLite MAX
function là một hàm tổng hợp trả về giá trị lớn nhất của tất cả các giá trị trong một nhóm. Bạn có thể sử dụng MAX
chức năng để hoàn thành rất nhiều thứ.
Ví dụ:bạn có thể sử dụng MAX
chức năng tìm sản phẩm đắt nhất, tìm mặt hàng lớn nhất trong nhóm của nó, v.v.
Phần sau minh họa cú pháp cơ bản của MAX
chức năng.
MAX([ALL|DISTINCT] expression);
Code language: SQL (Structured Query Language) (sql)
Biểu thức expression
có thể là một cột của bảng hoặc một biểu thức bao gồm các toán hạng, là các cột và các toán tử như +, *, v.v.
Có một số lưu ý quan trọng về MAX
chức năng:
- Đầu tiên,
MAX
hàm bỏ quaNULL
giá trị. - Thứ hai, không giống như
COUNT
hàm,DISTINCT
mệnh đề không liên quan đếnMAX
chức năng. - Thứ ba, vì một cột có thể lưu trữ các loại dữ liệu hỗn hợp, ví dụ:số nguyên, thực, văn bản, đốm màu và
NULL
trong SQLite, khi so sánh các giá trị để tìm giá trị lớn nhất,MAX
hàm sử dụng các quy tắc được đề cập trong hướng dẫn về loại dữ liệu.
SQLite MAX
ví dụ về hàm
Chúng tôi sẽ sử dụng tracks
trong cơ sở dữ liệu mẫu cho phần trình diễn.
Để có bản nhạc lớn nhất tính bằng byte, bạn áp dụng MAX
hàm đối với bytes
cột như câu lệnh sau:
SELECT MAX(bytes) FROM tracks;
Code language: SQL (Structured Query Language) (sql)
Hãy thử nó
SQLite MAX
trong ví dụ về truy vấn con
Để có được thông tin đầy đủ của bản nhạc lớn nhất, bạn sử dụng truy vấn con như sau:
SELECT
TrackId,
Name,
Bytes
FROM
tracks
WHERE
Bytes = (SELECT MAX(Bytes) FROM tracks);
Code language: SQL (Structured Query Language) (sql)
Hãy thử nó
Đầu tiên, truy vấn bên trong trả về byte cao nhất trong tất cả các bản nhạc bằng cách sử dụng MAX
hàm số. Sau đó, truy vấn bên ngoài nhận được bản nhạc lớn nhất có kích thước bằng với kích thước lớn nhất mà truy vấn con trả về.
SQLite MAX
chức năng và GROUP BY
ví dụ mệnh đề
Bạn có thể tìm thấy bản nhạc lớn nhất trong mỗi album bằng MAX
hoạt động với mệnh đề GROUP BY.
Đầu tiên, GROUP BY
mệnh đề nhóm các bài hát thành các nhóm dựa trên album. Sau đó, MAX
hàm trả về các bản nhạc lớn nhất cho mỗi nhóm.
Xem truy vấn sau:
SELECT
AlbumId,
MAX(bytes)
FROM
tracks
GROUP BY
AlbumId;
Code language: SQL (Structured Query Language) (sql)
Hãy thử nó
SQLite MAX
chức năng và HAVING
mệnh đề
Bạn có thể kết hợp MAX
chức năng với mệnh đề HAVING để lọc các nhóm dựa trên giá trị lớn nhất của chúng.
Ví dụ:để tìm các album và bản nhạc lớn nhất của chúng trong đó kích thước của các bản nhạc lớn nhất lớn hơn 6 MB (khoảng ~ 6000000), bạn sử dụng câu lệnh sau:
SELECT
albumid,
max(bytes)
FROM
tracks
GROUP BY
albumid
HAVING MAX(bytes) > 6000000;
Code language: SQL (Structured Query Language) (sql)
Hãy thử nó
Trong hướng dẫn này, bạn đã học cách sử dụng SQLite MAX
hàm để tìm giá trị lớn nhất trong một nhóm giá trị.