Hướng dẫn php aggregate - php tổng hợp

Hướng dẫn php aggregate - php tổng hợp

Hàm tổng hợp sẽ cho phép 

  • Thực hiện tính toán trên nhiều hàng
  • Của một cột duy nhất của một bảng
  • Và trả về một giá trị duy nhất.

Tiêu chuẩn ISO xác định năm (5) hàm tổng hợp cụ thể là;

1) COUNT2) SUM3) AVG4) MIN5) MAX 
2) SUM
3) AVG
4) MIN
5) MAX 

Tại sao sử dụng hàm tổng hợp.

Từ góc độ kinh doanh, các cấp tổ chức khác nhau có yêu cầu thông tin khác nhau. Các nhà quản lý cấp cao nhất thường quan tâm đến việc biết toàn bộ số liệu và không cần thiết các chi tiết riêng lẻ. Các nhà quản lý cấp cao nhất thường quan tâm đến việc biết toàn bộ số liệu và không cần thiết các chi tiết riêng lẻ. 

> Hàm tổng hợp cho phép chúng tôi dễ dàng tạo dữ liệu tóm tắt từ cơ sở dữ liệu của chúng tôi. 

Chẳng hạn, từ cơ sở dữ liệu myflix của chúng tôi, ban quản lý có thể yêu cầu các báo cáo sau

  • Phim được thuê ít nhất
  • Phim được thuê nhiều nhất.
  • Số lượng trung bình mà mỗi bộ phim được thuê trong một tháng.

Chúng tôi dễ dàng tạo ra các báo cáo trên bằng cách sử dụng các hàm tổng hợp.

Hãy xem xét các hàm tổng hợp một cách chi tiết.

Hàm COUNTCOUNT

Hàm COUNT trả về tổng số giá trị trong cột được chỉ định. Nó hoạt động trên cả hai loại dữ liệu số và không phải số. Tất cả các hàm tổng hợp theo mặc định loại trừ các giá trị null trước khi làm việc trên dữ liệu.Nó hoạt động trên cả hai loại dữ liệu số và không phải số. Tất cả các hàm tổng hợp theo mặc định loại trừ các giá trị null trước khi làm việc trên dữ liệu.

COUNT (*) là một triển khai đặc biệt của hàm COUNT trả về số lượng của tất cả các hàng trong một bảng được chỉ định. COUNT (*) cũng tính tới cả giá trị Nulls và trùng lặp.COUNT (*) cũng tính tới cả giá trị Nulls và trùng lặp.

Bảng hiển thị dưới đây cho thấy dữ liệu trong bảng Movierentals

reference_ numbertransaction_ datereturn_datemembership_ numbermovie_idmovie_ returned
11 20-06-2012 NULL 1 1 0
12 22-06-2012 25-06-2012 1 2 0
13 22-06-2012 25-06-2012 3 2 0
14 21-06-2012 24-06-2012 2 2 0
15 23-06-2012 NULL 3 3 0

22-06-2012

CHỌN COUNT (`movie_id`) TỪ` Movierentals` WHERE` movie_id` = 2;

25-06-2012

COUNT ('movie_id')
3

21-06-2012 DISTINCT

Hướng dẫn php aggregate - php tổng hợp

24-06-2012 Điều này đạt được bằng cách nhóm các giá trị tương tự lại với nhau.

23-06-2012

CHỌN `movie_id` TỪ` Movierentals`;

movie_id
1
2
2
2
3

Giả sử rằng chúng tôi muốn biết số lần được thuê của phim có movie_id là 2 thì tôi viết 

SELECT DISTINCT `movie_id` FROM `movierentals`;

Thực hiện truy vấn trên trong bàn làm việc của MySQL đối với myflixdb cho chúng ta các kết quả sau.

movie_id
1
2
3

Từ khóa DISTINCTMIN

Từ khóa DISTINCT cho phép chúng tôi bỏ qua các bản sao từ kết quả của chúng tôi. Điều này đạt được bằng cách nhóm các giá trị tương tự lại với nhau.trả về giá trị nhỏ nhất trong cột đã chỉ định .

Để đánh giá cao khái niệm Phân biệt, hãy thực hiện một truy vấn đơn giản

Bây giờ hãy thực hiện cùng một truy vấn với từ khóa riêng biệt -

SELECT MIN(`year_released`) FROM `movies`; 

25-06-2012

MIN('year_released')
2005

21-06-2012

24-06-2012 Nó trả về giá trị lớn nhất từ ​​ đã chỉ định .

23-06-2012 Chúng ta có thể dễ dàng sử dụng hàm MAX để đạt được điều đó.

Giả sử rằng chúng tôi muốn biết số lần được thuê của phim có movie_id là 2 thì tôi viết 

SELECT MAX(`year_released`)  FROM `movies`;

Thực hiện truy vấn trên trong bàn làm việc của MySQL đối với myflixdb cho chúng ta các kết quả sau. 

MAX('year_released')
2012

Từ khóa DISTINCTSUM

Từ khóa DISTINCT cho phép chúng tôi bỏ qua các bản sao từ kết quả của chúng tôi. Điều này đạt được bằng cách nhóm các giá trị tương tự lại với nhau.Chúng tôi có thể sử dụng MySQL SUM chức năng mà trả về tổng của tất cả các giá trị trong cột được chỉ định . SUM chỉ hoạt động trên các trường số . Giá trị Null được loại trừ khỏi kết quả trả về.

Để đánh giá cao khái niệm Phân biệt, hãy thực hiện một truy vấn đơn giản

Bây giờ hãy thực hiện cùng một truy vấn với từ khóa riêng biệt -membership_ numbermovie_ returned20-06-2012 NULL 22-06-2012
1 1 25-06-2012 21-06-2012 2500 11
2 1 24-06-2012 21-06-2012 2000 12
3 3 24-06-2012 21-06-2012 6000 NULL

22-06-2012

SELECT SUM(`amount_paid`) FROM `payments`;

25-06-2012

SUM('amount_paid')
10500

21-06-2012 AVG

24-06-2012 trả về giá trị trung bình của các giá trị trong một cột được chỉ định . Giống như hàm SUM, nó chỉ hoạt động trên các loại dữ liệu số .

23-06-2012 Chúng tôi có thể sử dụng truy vấn sau -

COUNT ('movie_id')
3
0

Giả sử rằng chúng tôi muốn biết số lần được thuê của phim có movie_id là 2 thì tôi viết 

AVG('amount_paid')
3500

Thực hiện truy vấn trên trong bàn làm việc của MySQL đối với myflixdb cho chúng ta các kết quả sau.

  • Từ khóa DISTINCT
  • Các hàm SUM và AVG chỉ hoạt động trên dữ liệu số.
  • Nếu bạn muốn loại trừ các giá trị trùng lặp khỏi kết quả hàm tổng hợp, hãy sử dụng từ khóa DISTINCT. Từ khóa TẤT CẢ bao gồm cả các bản sao. Nếu không có gì được chỉ định, TẤT CẢ được coi là mặc định.Từ khóa TẤT CẢ bao gồm cả các bản sao. Nếu không có gì được chỉ định, TẤT CẢ được coi là mặc định.
  • Các hàm tổng hợp có thể được sử dụng cùng với các mệnh đề SQL khác, chẳng hạn như GROUP BY

Teaser não

Bạn nghĩ rằng các hàm tổng hợp là dễ dàng. Thử đi!Thử đi!

Ví dụ sau đây nhóm các thành viên theo tên, đếm tổng số thanh toán, số tiền thanh toán trung bình và tổng số tiền thanh toán.

COUNT ('movie_id')
3
2

Thực hiện ví dụ trên trong bàn làm việc của MySQL cho chúng ta các kết quả sau.

Hướng dẫn php aggregate - php tổng hợp