Chức năng:

Gom nhóm các dòng dữ liệu theo tiêu chí gom nhóm đặt trong mệnh đề GROUP BY nhằm hỗ trợ và phục vụ các mục đích của câu truy vấn.

Cú pháp:

SELECT [DISTINCT] *|DANH_SACH_THUOC_TINH|BIEU_THUC,...
FROM DANH_SACH_QUAN_HE
[WHERE BIEU_THUC_DIEU_KIEN]
GROUP BY DANH_SACH_THUOC_TINH

Trong đó:

+ DANH_SACH_THUOC_TINH: bao gồm tất cả các cột muốn rút trích thông tin từ quan hệ trong cơ sở dữ liệu. Các thuộc tính cách nhau bởi dấu ",". Các thuộc tính trùng tên phải đặt tên quan hệ gắn liền với thuộc tính đó (theo quy tắc TEN_QUAN_HE.TEN_THUOC_TINH).

+ DANH_SACH_QUAN_HE: bao gồm tất cả các quan hệ tham gia hỗ trợ thực hiện yêu cầu truy vấn. Các quan hệ cách nhau bởi dấu ",".

+ BIEU_THUC_DIEU_KIEN: các dòng dữ liệu được rút trích ra từ cơ sở dữ liệu phải thỏa mãn các biểu thức điều kiện đã được quy định trong mệnh đề WHERE. Các điều kiện được nối với nhau bởi AND/OR.

+ Mệnh đề GROUP BY: danh sách các thuộc tính được chọn làm tiêu chí gom nhóm. Tất cả các thuộc tính đơn lẻ (ngoại trừ các hàm kết hợp và gom nhóm) xuất hiện trong mệnh đề SELECT phải đặt vào GROUP BY.

Ví dụ minh họa

Để thuận tiện cho các bạn học tập, mình có tạo sẵn file .sql trong này đã mình tạo cấu trúc bảng và data sẵn để các bạn dễ dàng thực hiện truy vấn, các bạn có thể tải tại đây.

Ví dụ 1: Hãy cho biết số lượng nhân viên của từng phòng.

SELECT PHG, COUNT(MANV) AS 'SLNV'
FROM NHANVIEN
GROUP BY PHG

Kết quả:

Ví dụ 2: Hãy cho biết tên phòng cùng số lượng nhân viên của từng phòng.

SELECT TENPHG, COUNT(MANV) AS 'SLNV'
FROM NHANVIEN, PHONGBAN
WHERE PHG = MAPHG
GROUP BY PHG, TENPHG

Kết quả:

CÓ THỂ BẠN QUAN TÂM

SQL Server - Mệnh đề SELECT

SQL Server - Mệnh đề SELECT

Chức năng: rút trích một vài thông tin, một vài cột từ các quan hệ tham gia câu truy vấn. Câu lệnh SELECT tương ứng với chức năng của phép tham chiếu trong đại số quan hệ.

T SQL - Cấu trúc WHILE

T SQL - Cấu trúc WHILE

Câu lệnh WHILE là một cấu trúc lặp sẽ thực hiện các thao tác lặp cho đến khi biểu thức điều kiện trong câu lệnh WHILE có giá trị Fasle. Biểu thức điều kiện lặp lại có thể là một câu lệnh SELECT

SQL Server - Backup / Restore Database

SQL Server - Backup / Restore Database

Mục đích của việc sao lưu và phục hồi dữ liệu Sao lưu và phục hồi dữ liệu là vấn đề rất quan trọng khi quản trị cơ sở dữ liệu. Hoạt động này đảm bảo cho dữ liệu khi xảy ra sự cố, ta có thể khôi phục...

SQL Server - Lệnh DELETE

SQL Server - Lệnh DELETE

Chức năng: cho phép người dùng xóa một hoặc nhiều dòng dữ liệu trên bảng dữ liệu đã có sẵn trong cơ sở dữ liệu.

SQL Server - User Defined Function

SQL Server - User Defined Function

Khái niệm User Defined Function là những hàm do người dùng tự định nghĩa để đáp ứng một mục tiêu nào đó. Một số hạn chế so với thủ tục là các tham số truyền vào không được mang thuộc tính OUTPUT, ng...

T SQL - Cấu trúc IF ... ELSE ...

T SQL - Cấu trúc IF ... ELSE ...

Câu lệnh IF ... ELSE ... Là một cấu trúc điều kiện, cho phép chúng ta thực hiện hoặc bỏ qua một hay nhiều lệnh dựa trên điều kiện đã chỉ định.

SQL Server - Stored Procedure

SQL Server - Stored Procedure

Khái niệm Stored Procedure - SP (thủ tục) là một tập các lệnh T -SQL và một số cấu trúc điều khiển, được lưu với một tên và được thực thi như một đơn vị công việc (Single unit of work) . Một thủ tục...

Giới thiệu SQL Server

Giới thiệu SQL Server

Giới thiệu chung SQL (Structured Query Language, đọc là "sequel") là tập lệnh truy xuất trên cơ dữ liệu (CSDL) quan hệ. Ngôn ngữ SQL, được IBM sử dụng đầu tiên trong hệ quản trị CSDL Sytem R vào...

SQL Server - Table

SQL Server - Table

Trong cơ sở dữ liệu, để tạo và quản trị các bảng dữ liệu, người dùng cần phải trả lời các câu hỏi sau: + Bảng dùng để lưu trữ những thông tin gì? Nên đặt tên bảng mang tính chất gợi nhớ tương ứng v...

ManhDanBlogs