Câu lệnh group by trong sql được dùng để kết hợp với lệnh SELECT để sắp xếp dữ liệu đồng nhất vào các nhóm, hàm này trong ngôn ngữ sql đi sau mệnh đề WHERE trong một lệnh SELECT và ở trước mệnh đề ORDER BY. SQL và những mệnh đề như GROUP BY ngày càng đóng vai trò quan trọng không kém đối với hệ quản trị CSDL.
Mục lục[ẩn]
Không có một câu lệnh nào là thừa thải của một hàm CSDL, chỉ là bạn chưa cần thiết dùng đến chúng hoặc chưa áp dụng đúng mục đích. Mệnh đề group by sql được thêm vào bởi vì các hàm tập hợp (như SUM) trả về một tập của các giá trị ở cột đó mỗi khi chúng được gọi, nhờ lệnh GROUP BY trong sql, ta có thể tính tổng của các giá trị theo từng nhóm lẻ tại cột.
Cách thực hiện nội dung như sau:
SELECT tên_cột, SUM (tên _cột) FROM tên_bảng GROUP BY tên_cột |
Ví dụ ta có bản ghi “HOCPHISINHVIEN” như sau:
ID | TEN | TUOI | MONHOC | HOCPHI |
1 | Hoang | 21 | CNTT | 4 |
2 | Nhu | 22 | TCNH | 5 |
3 | Hung | 21 | CK | 3 |
4 | Hoang | 21 | CK | 3 |
5 | Hung | 21 | CNTT | 4 |
6 | Ngan | 22 | TCNH | 5 |
Nếu muốn biết tổng số học phí của từng sinh viên, ta buộc phải dùng truy vấn như sau:
SQL> SELECT TEN, SUM(HOCPHI) FROM HOCPHISINHVIEN
GROUP BY TEN;
Khi đó sẽ cho ra một bảng ghi nội dung mới như sau:
TEN | SUM(HOCPHI) |
Hoang | 7 |
Nhu | 5 |
Hung | 7 |
Ngan | 5 |
Cách sử dụng mệnh đề nhìn chung cũng khá đơn giản, chỉ cần nắm rõ cú pháp, bạn cũng không cần phải thuộc nằm lòng mới có thể sử dụng được, đây cũng có thể được xem là một lợi thế của người tạo ngôn ngữ truy vấn SQL.
Theo công thức cấu trúc, group by trong sql server thường được đi kèm với một số hàm nhất định, cụ thể nhất đó là:
Như vậy, nội dung về group by sql là gì thì chắc hẳn sau bài viết này bí mật đã được bật mí, người dùng có thể tự tìm hiểu cho mình biết khi nào dùng group by sql, vận dụng ngôn ngữ máy tính sẽ trở nên dễ dàng hơn khi bạn tinh thông về nó.
Một vài ví dụ về câu lệnh group by in sql để bạn đọc có thể tham khảo.
Ví dụ 1: Lệnh group by sql Server
SELECT cot1, cot2, … cot_N,
Ham_tong (cot)
FROM bang
[WHERE dieukien]
GROUP BY cot1, cot2, … cot_N;
Chú thích:
– Cot1, cot2, … cotN: là giá trị không nằm ở hàm tổng và phải nằm ở mệnh đề GROUP BY.
– Ham_tong: có thể là các hàm như MIN, MAX, COUNT, SUM, AVG
– Bang: bảng cần lấy bảng ghi và phải có ít nhất 1 bảng thuộc lệnh FROM
– WHERE dieukien: điều kiện phù hợp đáp ứng với mệnh đề WHERE
Ví dụ 2: Cú pháp group by sql Server dùng hàm SUM. Dưới đây là ví dụ dùng hàm SUM tính tổng để trả về mã số thiết bị và tổng số lượng theo mã số thiết bị.
SELECT maso_thietbi, SUM(soluong) AS “Tong so luong”
FROM thietbi
GROUP BY maso_thietbi
Ví dụ 3: Cú pháp group by sql Server dùng hàm MIN. Cú pháp này dùng hàm MIN nhỏ nhất để cho bạn kết quả tên sản phẩm và số lượng tối thiểu của tên sản phẩm đó.
SELECT ten_sanpham, MIN(Soluong) AS “So luong it nhat”
FROM sanpham
GROUP BY ten_san pham
Ví dụ 4: Cú pháp group by SQL trong Access
SELECT fieldlist
FROM table
WHERE criteria
[GROUP BY groupfieldlist]
Chú thích:
– Fieldlist là tên của một hoặc nhiều trường cần truy xuất
– Table là tên bảng cần truy xuất các bản ghi
– Criteria là điều kiện cho mệnh đề WHERE
– Groupfieldlist là tên tối đa 10 trường được dùng để nhóm các bản ghi theo thứ tự cấp độ nhóm cao nhất đến thấp nhất.
– Mệnh đề GROUP BY phải luôn theo sau các điều kiện thuộc mệnh đề WHERE, tức sau khi viết mệnh đề WHERE xong xuống dòng đến mệnh đề GROUP BY.– Mệnh đề ORDER BY luôn theo sau mệnh đề GROUP BY nếu được sử dụng ở trong cú pháp truy vấn dữ liệu.
Trên đây là những chia sẻ của chúng tôi về câu lệnh group by thuộc ngôn ngữ sql, một lệnh được sử dụng kết hợp với mệnh đề WHERE để gom nhóm trong sql các dữ liệu giống nhau. Hy vọng từ những thông tin cú pháp trên bạn có thể học tập, thực hành với kết quả sử dụng ngôn ngữ SQL tốt hơn.