Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> SQL

SQL Aggregate Functions (Hàm tổng hợp): Hướng dẫn đầy đủ

Các hàm tổng hợp SQL (aggregate functions) truy xuất thông tin về dữ liệu trong cơ sở dữ liệu. Ví dụ: dùng COUNT để biết số bản ghi trong bảng. Các hàm tổng hợp được chấp nhận: COUNT, MIN, MAX, AVG và SUM.

Có trường hợp bạn muốn lấy thông tin về dữ liệu, chứ không phải dữ liệu bản thân. Có thể bạn muốn biết mỗi văn phòng có bao nhiêu nhân viên, hoặc ai làm việc lâu nhất. Đó là lúc SQL aggregate functions phát huy tác dụng.

Trong hướng dẫn này, chúng ta sẽ thảo luận cơ bản của SQL aggregate functions, cách chúng hoạt động và cách dùng trong truy vấn.

Lưu ý: Bài viết sử dụng PostgreSQL cho mục đích minh họa.

SQL Aggregate Functions

Hàm tổng hợp SQL thu thập thông tin về nội dung trong cơ sở dữ liệu. Ví dụ: dùng SUM để tìm tổng giá trị tất cả giá trị trong một cột. Hàm tổng hợp tiết kiệm thời gian khi cần tìm thông tin liên quan đến tổng hợp bản ghi.

Danh sách hàm tổng hợp trong SQL bạn có thể dùng:

  • COUNT
  • SUM
  • AVG
  • MIN
  • MAX

Hãy đi qua từng hàm. Chúng ta sẽ tham chiếu cơ sở dữ liệu nhân viên xuyên suốt hướng dẫn.

Hàm tổng hợp được dùng ở đầu câu lệnh SQL SELECT.

SQL COUNT

Hàm SQL COUNT trả về tổng số hàng được truy vấn trả về. Dùng mệnh đề WHERE, COUNT trả về số hàng đáp ứng điều kiện.

Ví dụ: muốn biết bao nhiêu nhân viên làm việc tại chi nhánh Stamford. Dùng truy vấn:

SELECT COUNT(name) FROM employees WHERE branch = 'Stamford';

Kết quả:

count
1

(1 hàng)

SQL MIN và MAX

Hàm SQL MIN trả về giá trị nhỏ nhất trong một cột. Câu lệnh SQL MAX trả về giá trị lớn nhất trong một cột. Cả hai là hàm tổng hợp SQL.

Ví dụ: muốn lấy số giải "nhân viên tháng" thấp nhất mà một người giữ. Truy xuất bằng truy vấn:

SELECT MIN(employee_month_awards) FROM employees;

Kết quả:

min
1

(1 hàng)

Muốn lấy số giải "nhân viên tháng" cao nhất một người giữ. Dùng hàm MAX:

SELECT MAX(employee_month_awards) FROM employees;

Kết quả:

max
6

(1 hàng)

Lưu ý: bạn có thể dùng MIN và MAX trên cả thông tin số và chữ trong cơ sở dữ liệu.

Nếu muốn lấy tên xuất hiện đầu tiên theo bảng chữ cái, dùng MIN(name). Tương tự, MAX(name) lấy tên xuất hiện cuối cùng.

SQL AVG

Hàm SQL AVG trả về giá trị trung bình của một cột cụ thể.

Giả sử muốn lấy số giải "nhân viên tháng" trung bình mỗi nhân viên giữ. Dùng truy vấn:

SELECT AVG(employee_month_awards) FROM employees;

Kết quả:

avg
4

(1 hàng)

SQL SUM

Hàm SQL SUM tìm tổng giá trị của một cột cụ thể.

Giả sử muốn biết tổng số giải "nhân viên tháng" đã được trao. Thông tin dễ dàng truy cập bằng câu lệnh SQL SUM:

SELECT SUM(employee_month_awards) FROM employees;

Kết quả:

sum
20

(1 hàng)

Kết luận

Hàm tổng hợp SQL trả về thông tin về dữ liệu trong cơ sở dữ liệu. AVG ví dụ trả về trung bình giá trị trong cột bảng. Có 5 hàm tổng hợp: MIN, MAX, COUNT, SUM và AVG.

Bạn có muốn thử thách?

Viết hàm tổng hợp tìm số nhân viên tên "Linda". So sánh truy vấn của bạn với các truy vấn ở trên xem có hợp lý không.

Chúng tôi đã viết hướng dẫn toàn diện về how to learn SQL. Nếu bạn tìm tài nguyên học mới, xem hướng dẫn tại trang How to Learn SQL.