Việc sử dụng câu lệnh SQL GROUP BY là gì?



Bài viết này là hướng dẫn toàn diện về cách sử dụng câu lệnh SQL GROUP BY để nhóm dữ liệu theo ít điều kiện hoặc cột.

Khi có một lượng lớn dữ liệu, chúng ta thường thấy có khả năng thao tác dữ liệu theo yêu cầu của mình. Mệnh đề GROUP BY là một trong những mệnh đề như vậy , được sử dụng để nhóm dữ liệu dựa trên ít cột hoặc theo điều kiện. Trong bài viết này về Câu lệnh GROUP BY trong SQL, tôi sẽ thảo luận một số cách sử dụng câu lệnh GROUP BY theo trình tự sau:

  1. Câu lệnh GROUP BY
  2. Cú pháp
  3. Ví dụ:

Trước khi chuyển sang các ví dụ về cách sử dụng mệnh đề GROUP BY, chúng ta hãy hiểu GROUP BY trong SQL là gì và cú pháp của nó.





Câu lệnh SQL GROUP BY

Câu lệnh này được sử dụng để nhóm các bản ghi có cùng giá trị. Câu lệnh GROUP BY thường được sử dụng với các hàm tổng hợp để nhóm kết quả theo một hoặc nhiều cột.Ngoài ra, mệnh đề GROUP BY cũng được sử dụng với mệnh đề HAVING và để nhóm tập hợp kết quả dựa trên các điều kiện.

NHÓM SQL THEO Cú pháp

CHỌN Column1, Column2, ..., ColumnN from TableName WHERE Điều kiện NHÓM THEO (các) Tên cột Thứ tự theo (các) Tên cột

Tại đây, bạn có thể thêm các hàm tổng hợp trước tên cột và cũng có một mệnh đề HAVING ở cuối câu lệnh để đề cập đến một điều kiện.Tiếp theo, trong bài viết này về SQL GROUP BY, chúng ta hãy hiểu cách triển khai câu lệnh này.



Ví dụ:

Để bạn hiểu rõ hơn, tôi đã chia các ví dụ thành các phần sau:

Tôi sẽ xem xét bảng sau để giải thích cho bạn các ví dụ:

EmpID EmpName EmpEmail Số điện thoại Tiền lương Tp.

một



Nidhi

nidhi@sample.com

9955669999

50.000

Mumbai

2

Anay

anay@sample.com

9875679861

55000

Đặt

3

Rahul

rahul@sample.com

9876543212

35000

stack và heap trong java

Delhi

4

Sonia

sonia@sample.com

9876543234

35000

Delhi

5

Akash

akash@sample.com

9866865686

25000

Mumbai

Hãy để chúng tôi xem xét từng người trong số họ.

Sử dụng SQL GROUP BY trên một cột

Thí dụ:

Viết truy vấn để lấy số lượng nhân viên ở mỗi thành phố.

CHỌN COUNT (EmpID), Thành phố TỪ NHÓM Nhân viên THEO Thành phố

Đầu ra:

Bạn sẽ thấy kết quả sau:

Đếm (EmpID) Tp.

2

Delhi

2

Mumbai

một

Đặt

Sử dụng SQL GROUP BY trên nhiều cột

Thí dụ:

Viết truy vấn để lấy số lượng nhân viên có mức lương khác nhau ở mỗi thành phố.

CHỌN Thành phố, Mức lương, Số lượng (*) TỪ NHÓM Nhân viên theo Thành phố, Mức lương

Đầu ra:

Bảng sẽ có dữ liệu sau:

Tp. Tiền lương Đếm(*)

Delhi

35000

2

Mumbai

25000

khai báo một mảng các đối tượng trong java

một

Mumbai

50.000

một

Đặt

55000

một

Sử dụng SQL GROUP BY với ORDER BY

Khi chúng ta sử dụng câu lệnh SQL GROUP BY với Mệnh đề ORDER BY , các giá trị được sắp xếp theo thứ tự tăng dần hoặc giảm dần.

Thí dụ:

Viết truy vấn để lấy số lượng nhân viên ở mỗi thành phố, được sắp xếp theo thứ tự giảm dần.

CHỌN ĐẾM (EmpID), Thành phố TỪ NHÓM Nhân viên THEO THÀNH PHỐ ĐẶT HÀNG THEO COUNT (EmpID) MÔ TẢ

Đầu ra:

Bảng sẽ có dữ liệu sau:

Đếm (EmpID) Tp.

2

Delhi

2

Mumbai

một

Đặt

Sử dụng SQL GROUP BY với mệnh đề HAVING

Câu lệnh GROUP BY trong SQL được sử dụng với mệnh đề ‘HAVING’ để đề cập đến các điều kiện về nhóm.Ngoài ra, vì chúng ta không thể sử dụng các hàm tổng hợp với mệnh đề WHERE, chúng tôi phải sử dụng mệnh đề 'HAVING' để sử dụng các hàm tổng hợp với GROUP BY.

Thí dụ:

Viết truy vấn để lấy số lượng nhân viên ở mỗi thành phố, có mức lương> 15000

CHỌN ĐẾM (EmpID), Thành phố TỪ NHÓM Nhân viên THEO Thành phố CÓ LƯƠNG> 15000

Đầu ra:

Vì tất cả đều là bản ghi trong bảng Nhân viên có mức lương> 15000, chúng ta sẽ thấy bảng sau là đầu ra:

Đếm (EmpID) Tp.

2

Delhi

2

Mumbai

một

Đặt

Sử dụng GROUP BY với JOINS

Chúng tôi SQL câu lệnh được sử dụng để kết hợp các hàng từ hai hoặc nhiều bảng, dựa trên một cột có liên quan giữa các bảng đó. Chúng ta có thể sử dụng câu lệnh SQL GROUP BY để nhóm tập kết quả dựa trên một cột / các cột.Hãy xem xét các bảng dưới đây để thực thi các câu lệnh JOIN với mệnh đề GROUP BY trong SQL.

Bảng dự án:

ProjectID EmpID ClientID ProjectDate
2. 3. 4. 5một426-01-2019
98762528-2-2019
34563603-12-2019

Bảng khách hàng:

ClientID Tên khách hàng

4

Sanjana

5

Rohan

6

Arun

Thí dụ

Viết một truy vấn để liệt kê số lượng dự án được yêu cầu bởi mỗi khách hàng:

CHỌN Khách hàng.ClientName, COUNT (Projects.ProjectID) Theo Yêu cầu Dự án TỪ Dự án TRÁI THAM GIA Khách hàng TRÊN Dự án.ProjectID = Khách hàng.ProjectID NHÓM THEO Tên khách hàng

Đầu ra:

Bảng sẽ có dữ liệu sau:

Tên khách hàng Dự án được yêu cầu

Arun

một

Rohan

một

Sanjana

một

Với điều đó, chúng ta sẽ kết thúc bài viết NHÓM NHÓM BẰNG SQL. Kiểm tra cái này bởi Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hoặc là với hơn 250.000 người học hài lòng trên toàn cầu. Khóa học này đào tạo bạn về các khái niệm cốt lõi, các công cụ và kỹ thuật nâng cao để quản lý dữ liệu và quản trị Cơ sở dữ liệu MySQL. Nó bao gồm học tập thực hành về các khái niệm như MySQL Workbench, MySQL Server, Data Modeling, MySQL Connector, Database Design, MySQL Command line, MySQL Functions, v.v. Kết thúc khóa đào tạo, bạn sẽ có thể tạo và quản trị Cơ sở dữ liệu MySQL của riêng mình và quản lý dữ liệu.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của bài viết “SQL GROUP BY” này và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.