SQL - MIN() và MAX() Functions: Unleashing the Power of Extremes

Xin chào các bạn đam mê SQL! Hôm nay, chúng ta sẽ cùng nhau khám phá hai hàm vô cùng hữu ích trong SQL: MIN() và MAX(). Những hàm này giống như những siêu anh hùng của phân tích dữ liệu, xuất hiện để tìm ra giá trị nhỏ nhất và lớn nhất trong bộ dữ liệu của bạn. Hãy thắt dây an toàn, và cùng nhau bắt đầu hành trình thú vị này!

SQL - Min & Max

Hiểu về Cơ Bản

Trước khi chúng ta đi vào chi tiết, hãy dành một chút thời gian để hiểu những gì các hàm này thực sự làm. Hãy tưởng tượng bạn là một giáo viên (như tôi!) với một sổ điểm đầy điểm số bài kiểm tra. Nếu bạn muốn nhanh chóng tìm ra điểm cao nhất và thấp nhất, bạn sẽ sử dụng MIN() và MAX(). Đó chính là những gì các hàm này làm trong SQL, nhưng với bất kỳ loại dữ liệu nào bạn muốn.

Hàm SQL MAX(): Đạt đến những vì sao

MAX() là gì?

Hàm MAX() làm chính xác những gì nó nói trên nhãn - nó trả về giá trị lớn nhất từ một bộ giá trị. Nó giống như có một trợ lý rất hiệu quả có thể ngay lập tức phát hiện ra con số lớn nhất trong một danh sách dài.

Cú pháp cơ bản

Dưới đây là cách bạn sử dụng hàm MAX():

SELECT MAX(column_name) FROM table_name;

Ví dụ thực tế

Giả sử chúng ta có một bảng叫做 students với một cột test_score. Để tìm điểm kiểm tra cao nhất, chúng ta sẽ viết:

SELECT MAX(test_score) FROM students;

Truy vấn này sẽ trả về một giá trị duy nhất - điểm kiểm tra cao nhất trong toàn bộ bảng.

Nhưng nếu chúng ta muốn biết thêm thông tin? Hãy làm cho nó trở nên稍微 phức tạp hơn:

SELECT student_name, test_score
FROM students
WHERE test_score = (SELECT MAX(test_score) FROM students);

Truy vấn này sẽ cho chúng ta biết tên của học sinh (hoặc các học sinh) đã đạt được điểm cao nhất, cùng với điểm số của họ. Nó giống như công bố danh hiệu học sinh xuất sắc!

MAX() với Group By

Bây giờ, giả sử chúng ta muốn tìm điểm cao nhất cho mỗi môn học. Chúng ta có thể sử dụng MAX() với GROUP BY:

SELECT subject, MAX(test_score) AS highest_score
FROM students
GROUP BY subject;

Truy vấn này sẽ hiển thị điểm cao nhất cho mỗi môn học. Nó giống như có một bảo tàng danh vọng cho mỗi danh mục!

Hàm SQL MIN(): Khai thác những viên kim cương trong hỗn hợp

MIN() là gì?

Cũng như MAX() tìm ra giá trị lớn nhất, MIN() săn lùng giá trị nhỏ nhất. Nó equally powerful nhưng theo hướng ngược lại.

Cú pháp cơ bản

Cú pháp cho MIN() rất giống với MAX():

SELECT MIN(column_name) FROM table_name;

Ví dụ thực tế

Sử dụng bảng students một lần nữa, hãy tìm điểm kiểm tra thấp nhất:

SELECT MIN(test_score) FROM students;

Truy vấn này sẽ trả về điểm thấp nhất trong bảng. Nhưng hãy nhớ rằng, mỗi điểm đại diện cho nỗ lực của một học sinh, vì vậy hãy tìm hiểu ai có thể cần sự hỗ trợ thêm:

SELECT student_name, test_score
FROM students
WHERE test_score = (SELECT MIN(test_score) FROM students);

Truy vấn này sẽ hiển thị tên (hoặc các tên) của học sinh có điểm thấp nhất, cho chúng ta cơ hội cung cấp sự hỗ trợ thêm.

MIN() với Group By

Tương tự như ví dụ MAX(), chúng ta có thể sử dụng MIN() với GROUP BY để tìm điểm thấp nhất cho mỗi môn học:

SELECT subject, MIN(test_score) AS lowest_score
FROM students
GROUP BY subject;

Điều này có thể giúp xác định môn học nào có thể cần nhiều sự chú ý hơn trong chương trình giảng dạy của chúng ta.

Kết hợp MIN() và MAX(): Cặp đôi linh hoạt

Bây giờ, hãy xem các hàm này làm việc cùng nhau! Chúng ta có thể sử dụng cả MIN() và MAX() trong một truy vấn để lấy một phạm vi giá trị:

SELECT
subject,
MIN(test_score) AS lowest_score,
MAX(test_score) AS highest_score,
MAX(test_score) - MIN(test_score) AS score_range
FROM students
GROUP BY subject;

Truy vấn này cung cấp cho chúng ta cái nhìn toàn diện về mỗi môn học, hiển thị điểm thấp nhất, điểm cao nhất và khoảng cách giữa chúng. Nó giống như có cái nhìn từ trên cao về hiệu suất của học sinh!

Lưu ý về các giá trị NULL

Một điều quan trọng cần nhớ: MIN() và MAX() bỏ qua các giá trị NULL. Nếu một cột chứa các giá trị NULL, các hàm này sẽ trả về giá trị nhỏ nhất hoặc lớn nhất của các giá trị không phải NULL. Nó giống như chúng có một bộ phát hiện đặc biệt để tập trung chỉ vào dữ liệu thực tế.

Kết luận: Thạo trong việc kiểm soát cực trị

Và thế là chúng ta đã khám phá thế giới của các hàm MIN() và MAX() trong SQL. Những công cụ mạnh mẽ này cho phép chúng ta nhanh chóng tìm ra các cực trị trong dữ liệu của mình, bất kể chúng ta đang tìm kiếm những người có thành tích cao nhất, các lĩnh vực cần cải thiện hay chỉ đơn giản là muốn hiểu phạm vi dữ liệu của mình.

Nhớ rằng, trong thế giới dữ liệu, mỗi giá trị đều kể một câu chuyện. MIN() và MAX() giúp chúng ta tìm ra bắt đầu và kết thúc của những câu chuyện đó, cung cấp cho chúng ta những thông tin có thể định hướng quyết định và cải tiến.

Trong hành trình SQL của bạn, hãy giữ các hàm này trong bộ công cụ của bạn. Chúng đơn giản nhưng mạnh mẽ, và bạn sẽ thấy mình sử dụng chúng liên tục. Chúc các bạn thành công và may mắn với dữ liệu của bạn luôn kể những câu chuyện thú vị!

Credits: Image by storyset