MySQL-এ মার্কস গোষ্ঠীবদ্ধ করতে GROUP BY ক্লজ এবং যোগফল বের করতে SUM() ফাংশন ব্যবহার করা হয়। প্রথমে একটি টেবিল তৈরি করা যাক:
mysql> create table DemoTable1920 (
StudentName varchar(20),
StudentMarks int
);
Query OK, 0 rows affected (0.00 sec)
এখন টেবিলে কিছু রেকর্ড যোগ করুন:
mysql> insert into DemoTable1920 values('Chris',67);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1920 values('David',97);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1920 values('Chris',57);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1920 values('David',45);
Query OK, 1 row affected (0.00 sec)
mysql> insert into DemoTable1920 values('Chris',89);
Query OK, 1 row affected (0.00 sec)
টেবিলের সব রেকর্ড দেখতে SELECT স্টেটমেন্ট ব্যবহার করুন:
mysql> select * from DemoTable1920;
এটি নিম্নলিখিত আউটপুট দেবে:
+-------------+--------------+ | StudentName | StudentMarks | +-------------+--------------+ | Chris | 67 | | David | 97 | | Chris | 57 | | David | 45 | | Chris | 89 | +-------------+--------------+ 5 rows in set (0.00 sec)
এখন নির্দিষ্ট ছাত্রের মার্কস গোষ্ঠীবদ্ধ করে মোট মার্কস বের করার কোয়েরি:
mysql> select StudentName, SUM(StudentMarks) as TotalMarks from DemoTable1920 group by StudentName;
এটি নিম্নলিখিত আউটপুট দেবে:
+-------------+------------+ | StudentName | TotalMarks | +-------------+------------+ | Chris | 213 | | David | 142 | +-------------+------------+ 2 rows in set (0.00 sec)
ব্যাখ্যা
- GROUP BY StudentName: একই নামের সকল সারি একগোষ্ঠীতে আনে।
- SUM(StudentMarks): প্রতিটি গোষ্ঠীর মার্কসের যোগফল বের করে।
- AS TotalMarks: ফলাফলের কলামের নাম দিয়েছে।
এই পদ্ধতিতে আপনি যেকোনো সমষ্টিগত ডেটা (যেমন: প্রতিটি বিভাগের মোট বেতন, প্রতিটি পণ্যের মোট বিক্রয়) সহজে বের করতে পারেন।