Hàm MAX trong SQL Server

Max trong SQL Server là gì? Bạn đã biết cách dùng hàm MAX trong SQL Server chưa? Nếu chưa, hãy cùng Quantrimang.com tìm hiểu nhé!

Nếu là lập trình viên lâu năm, ngôn ngữ SQL Server có lẽ không còn xa lạ với bạn. Tuy nhiên, không phải ai cũng hiểu rõ cách dùng của nó.

Về cơ bản, SQL là một ngôn ngữ phi thủ tục, không cần cách thức truy cập cơ sở dữ liệu. Chính vì thế, nó khá dễ dùng nếu bạn chịu khó dành thời gian tìm hiểu các hàm có sẵn trong SQL Server.

Hàm MAX() là một trong số hàm phổ biến mà bạn cần phải biết khi dùng SQL Server. Dưới đây là thông tin cơ bản về hàm MAX() của SQL Server.

Mô tả

Hàm MAX trong SQL Server là một hàm tổng hợp trả về giá trị tối đa trong một nhóm.

Cú pháp

Để sử dụng hàm MAX trong SQL Server, ta dùng cú pháp như sau:

SELECT MAX(cot)
FROM bang
[WHERE dieukien];

Tham số:

  • cot: cột hoặc giá trị tính toán, biểu thức mà bạn muốn tìm giá trị lớn nhất
  • bang: bảng dùng để lấy bản ghi. Phải có ít nhất 1 bảng trong mệnh đề FROM.
  • dieukien: tùy chọn. Điều kiện mà bản ghi phải đáp ứng để được chọn.

Lưu ý:

  • Hàm MAX có thể được sử dụng trong các phiên bản sau của SQL Server: SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005.

Ví dụ

Hãy xem và khám phá một số ví dụ về hàm MAX trong SQL Server.

Giả sử, ta có bảng dữ liệu như sau:

Bảng dữ liệu

Ví dụ 1: Tìm số bài nhiều nhất trong bảng

SELECT MAX(Sobai)
FROM Quantrimang
WHERE Sobai < 100;
Result: 94

Kết quả khi chạy lệnh Select

Ở ví dụ này ta số lượng bài nhiều nhất trong một chuyên mục có trong bảng Quantrimang mà số bài nhỏ hơn 100.

Ví dụ 2: Sử dụng GROUP BY

Ví dụ sau tìm giá trị lớn nhất trong tất cả bản ghi liên quan tới một chuyên mục lớn, bạn sẽ thực hiện như sau:

SELECT Chuyenmuclon, MAX(Sobai) AS "So bai nhieu nhat"
FROM Quantrimang
GROUP BY Chuyenmuclon;

Kết quả khi chạy lệnh tìm giá trị lớn nhất

Ví dụ 3: Sử dụng MAX() với mệnh đề Having

Hàm Max() có thể được dùng với mệnh đề Having như ví dụ bên dưới. Đây là mệnh đề GROUP By nhóm các nhân viên theo phòng ban, lấy lương cao nhất của từng bộ phận, sau đó dùng mệnh đề Having lọc kết quả bằng cách chỉ trả về những phòng có mức lương cao hơn 50000.

Code mẫu:

SELECT DepartmentId, Max(Salary) DeptMaxSal FROM Employee
GROUP BY DepartmentID
HAVING MAX (Salary) > 50000;

Hàm Max trong SQL Server

Bài trước: Hàm FLOOR trong SQL Server

Bài tiếp: Hàm MIN trong SQL Server

Thứ Năm, 30/03/2023 17:04
4,312 👨 83.545
1 Bình luận
Sắp xếp theo
  • Thành
    Thành E thấy result trong ví dụ 1 đang sai. Phải là 94 mới đúng ạ
    Thích Phản hồi 08/07/20
    ❖ SQL Server