GROUP BY` ব্যবহার করে কলামের মান গ্রুপ করা যায় এবং এggregate ফাংশন (COUNT, SUM, AVG) প্রয়োগ করা যায়।
সিনট্যাক্স
CREATE OR REPLACE VIEW view_name AS
select_statements FROM table
GROUP BY expression1, expression2, ... expression_n;
উদাহরণ
Student_info বেস টেবিল:
mysql> SELECT * FROM Student_info;
+------+---------+------------+------------+
| id | Name | Address | Subject |
+------+---------+------------+------------+
| 101 | YashPal | Amritsar | History |
| 105 | Gaurav | Chandigarh | Literature |
| 125 | Raman | Shimla | Computers |
| 130 | Ram | Jhansi | Computers |
| 132 | Shyam | Chandigarh | Economics |
| 133 | Mohan | Delhi | Computers |
+------+---------+------------+------------+
১. Subject অনুযায়ী গ্রুপিং:
mysql> CREATE OR REPLACE VIEW Info AS
-> SELECT Subject, COUNT(*) FROM Student_info GROUP BY Subject;
Query OK, 0 rows affected (0.10 sec)
mysql> SELECT * FROM info;
+------------+----------+
| Subject | COUNT(*) |
+------------+----------+
| Computers | 3 |
| Economics | 1 |
| History | 1 |
| Literature | 1 |
+------------+----------+
২. Subject এবং Name অনুযায়ী গ্রুপিং (দুই কলাম):
mysql> CREATE OR REPLACE VIEW Info AS
-> SELECT Subject, Name, COUNT(Subject)
-> FROM Student_info GROUP BY Subject, Name;
Query OK, 0 rows affected (0.05 sec)
mysql> SELECT * FROM info;
+------------+---------+----------------+
| Subject | Name | COUNT(Subject) |
+------------+---------+----------------+
| Computers | Mohan | 1 |
| Computers | Ram | 1 |
| Computers | Raman | 1 |
| Economics | Shyam | 1 |
| History | YashPal | 1 |
| Literature | Gaurav | 1 |
+------------+---------+----------------+
GROUP BY ক্লজ সারিগুলো কলামের মান অনুযায়ী সমষ্টিগত সারিতে রূপান্তর করে।