Hàm nhóm còn được gọi là hàm tổng hợp

Hàm tổng hợp (trước đây gọi là hàm cột) chấp nhận các đối số và trả về một giá trị vô hướng duy nhất là kết quả của việc đánh giá một tập hợp các giá trị giống nhau, chẳng hạn như các giá trị trong một cột trong một tập hợp gồm một hoặc nhiều hàng

Đối số của một hàm tổng hợp là một tập hợp các giá trị bắt nguồn từ một biểu thức. Biểu thức có thể bao gồm các cột, nhưng không thể bao gồm một lựa chọn đầy đủ vô hướng, một hàm tổng hợp khác hoặc một biểu thức XMLQUERY hoặc XMLEXISTS (SQLSTATE 42607). Phạm vi của tập hợp là một nhóm hoặc một bảng kết quả trung gian.

Nếu một mệnh đề GROUP BY được chỉ định trong một truy vấn và kết quả trung gian của các mệnh đề FROM, WHERE, GROUP BY và HAVING là tập rỗng, thì các hàm tổng hợp sẽ không được áp dụng;

Nếu mệnh đề GROUP BY không được chỉ định trong truy vấn và kết quả trung gian của các mệnh đề FROM, WHERE và HAVING là tập hợp trống, thì các hàm tổng hợp được áp dụng cho tập hợp trống

Ví dụ, kết quả của câu lệnh SELECT sau đây là số lượng giá trị riêng biệt của JOBCODE cho nhân viên trong bộ phận D01.

   SELECT COUNT(DISTINCT JOBCODE)
     FROM CORPDATA.EMPLOYEE
     WHERE WORKDEPT = 'D01'

Từ khóa DISTINCT không được coi là đối số của hàm, mà là đặc tả của thao tác được thực hiện trước khi hàm được áp dụng. Nếu DISTINCT được chỉ định, các giá trị trùng lặp sẽ bị loại bỏ. Khi diễn giải mệnh đề DISTINCT cho các giá trị dấu phẩy động thập phân bằng số, số chữ số có nghĩa trong giá trị không được xem xét. Ví dụ: số dấu phẩy động thập phân 123. 00 không khác biệt với số dấu phẩy động thập phân 123. Biểu diễn của số được trả về từ truy vấn sẽ là bất kỳ biểu diễn nào gặp phải (ví dụ: 123. 00 hoặc 123).

Nếu TẤT CẢ được chỉ định rõ ràng hoặc ngầm định, các giá trị trùng lặp sẽ không bị loại bỏ

Để tương thích với các triển khai SQL khác, UNIQUE có thể được chỉ định làm từ đồng nghĩa với DISTINCT trong các hàm tổng hợp

Các hàm tổng hợp trả về một hàng kết quả duy nhất dựa trên các nhóm hàng, thay vì trên các hàng đơn lẻ. Hàm tổng hợp có thể xuất hiện trong danh sách chọn lọc và trong mệnh đề ORDER BYHAVING. Chúng thường được sử dụng với mệnh đề GROUP BY trong câu lệnh SELECT, trong đó Cơ sở dữ liệu Oracle chia các hàng của bảng hoặc dạng xem được truy vấn thành các nhóm. Trong một truy vấn có chứa một mệnh đề GROUP BY, các thành phần của danh sách lựa chọn có thể là các hàm tổng hợp, các biểu thức, hằng số hoặc biểu thức GROUP BY liên quan đến một trong những điều này. Oracle áp dụng các hàm tổng hợp cho từng nhóm hàng và trả về một hàng kết quả duy nhất cho từng nhóm

Nếu bạn bỏ qua mệnh đề GROUP BY, thì Oracle sẽ áp dụng các hàm tổng hợp trong danh sách chọn cho tất cả các hàng trong bảng hoặc dạng xem được truy vấn. Bạn sử dụng các hàm tổng hợp trong mệnh đề HAVING để loại bỏ các nhóm khỏi đầu ra dựa trên kết quả của các hàm tổng hợp, thay vì dựa trên các giá trị của các hàng riêng lẻ của bảng hoặc dạng xem được truy vấn

Nhiều hàm tổng hợp (nhưng không phải tất cả) nhận một đối số duy nhất chấp nhận các mệnh đề này

  • ORDER4 và ORDER5, đồng nghĩa, khiến hàm tổng hợp chỉ xem xét các giá trị riêng biệt của biểu thức đối số. Sơ đồ cú pháp cho các hàm tổng hợp trong chương này sử dụng từ khóa ORDER4 để đơn giản hóa

  • ORDER7 khiến một hàm tổng hợp xem xét tất cả các giá trị, bao gồm tất cả các giá trị trùng lặp

Ví dụ: giá trị trung bình của ORDER4 của 1, 1, 1 và 3 là 2. Giá trị trung bình của ORDER7 là 1. 5. Nếu bạn không chỉ định, thì giá trị mặc định là ORDER7

Một số hàm tổng hợp cho phép BY1, đây là một phần cú pháp của các hàm phân tích. Tham khảo windowing_clause để biết thông tin về điều khoản này. Trong danh sách các hàm tổng hợp ở cuối phần này, các hàm cho phép BY1 được theo sau bởi dấu hoa thị (*)

Tất cả các hàm tổng hợp ngoại trừ BY3(*), BY4 và BY5 đều bỏ qua null. Bạn có thể sử dụng hàm BY6 trong đối số của hàm tổng hợp để thay thế một giá trị cho giá trị rỗng. BY3 và BY8 không bao giờ trả về giá trị rỗng mà trả về số hoặc số không. Đối với tất cả các hàm tổng hợp còn lại, nếu tập dữ liệu không chứa hàng hoặc chỉ chứa các hàng có giá trị null làm đối số cho hàm tổng hợp, thì hàm này sẽ trả về giá trị rỗng

Các hàm tổng hợp BY9, HAVING0, HAVING1, HAVING2, BY3, HAVING4 và HAVING5, khi được theo sau bởi từ khóa HAVING6, có thể được sử dụng cùng với hàm HAVING7 hoặc HAVING8 để hoạt động trên một tập hợp các giá trị từ một tập hợp các hàng xếp hạng . Tham khảo FIRST để biết thêm thông tin

Bạn có thể lồng các hàm tổng hợp. Ví dụ: ví dụ sau tính trung bình của mức lương tối đa của tất cả các phòng ban trong lược đồ mẫu GROUP1

SELECT AVG(MAX(salary))
  FROM employees
  GROUP BY department_id;

AVG(MAX(SALARY))
----------------
      10926.3333

Tính toán này đánh giá tổng hợp bên trong (HAVING0(GROUP3)) cho mỗi nhóm được xác định bởi mệnh đề GROUP BY (GROUP6) và tổng hợp lại các kết quả

Trong danh sách các hàm tổng hợp theo sau, các hàm có dấu hoa thị (*) cho phép BY1

Đó là các chức năng tổng hợp?

Hàm tổng hợp là một phép tính toán học liên quan đến một dải giá trị dẫn đến chỉ một giá trị duy nhất thể hiện tầm quan trọng của dữ liệu tích lũy mà hàm đó được lấy từ đó. Aggregate functions are often used to derive descriptive statistics.

Hàm tổng hợp là gì Tên gọi khác của nó là gì?

Hàm tổng hợp còn được gọi là hàm tập hợp . Hàm tổng hợp cơ bản trả về một giá trị bằng cách tổng hợp nhiều hàng dữ liệu.

Tại sao GROUP BY được sử dụng với các hàm tổng hợp?

Câu lệnh Nhóm theo được sử dụng để nhóm bất kỳ hàng nào của một cột có cùng giá trị được lưu trữ trong đó lại với nhau, dựa trên một hàm được chỉ định trong câu lệnh. Generally, these functions are one of the aggregate functions such as MAX() and SUM(). This statement is used with the SELECT command in SQL.

Tại sao các chức năng tổng hợp được gọi như vậy?

10. 2 chức năng tổng hợp . Thông thường kết quả này là số. because they accept a record set and a field name as inputs and generate a single result. Usually this result is numerical.