COUNT(*) এবং GROUP BY ফাংশন ব্যবহার করে কয়টি সারি একই মান আছে তা গণনা করতে। সিনট্যাক্স নিম্নরূপ -
SELECT yourColumName1, count(*) as anyVariableName from yourTableName GROUP BY yourColumName1;
উপরের সিনট্যাক্স বোঝার জন্য প্রথমে একটি টেবিল তৈরি করা যাক। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> create table RowWithSameValue −> ( −> StudentId int, −> StudentName varchar(100), −> StudentMarks int −> ); Query OK, 0 rows affected (0.55 sec)
একই মান সহ কিছু রেকর্ড সন্নিবেশ করান। এখানে, আমরা আমাদের উদাহরণের জন্য একাধিক শিক্ষার্থীর জন্য একই নম্বর যোগ করেছি। রেকর্ড সন্নিবেশ করার জন্য ক্যোয়ারী নিম্নরূপ -
mysql> insert into RowWithSameValue values(100,'Carol',89); Query OK, 1 row affected (0.21 sec) mysql> insert into RowWithSameValue values(101,'Sam',89); Query OK, 1 row affected (0.15 sec) mysql> insert into RowWithSameValue values(102,'John',99); Query OK, 1 row affected (0.12 sec) mysql> insert into RowWithSameValue values(103,'Johnson',89); Query OK, 1 row affected (0.15 sec)
এখন আপনি সমস্ত রেকর্ড প্রদর্শন করতে পারেন যা আমরা উপরে সন্নিবেশিত করেছি। সমস্ত রেকর্ড প্রদর্শনের জন্য ক্যোয়ারী নিম্নরূপ -
mysql> select *from RowWithSameValue;
নিচের আউটপুট −
+-----------+-------------+--------------+ | StudentId | StudentName | StudentMarks | +-----------+-------------+--------------+ | 100 | Carol | 89 | | 101 | Sam | 89 | | 102 | John | 99 | | 103 | Johnson | 89 | +-----------+-------------+--------------+ 4 rows in set (0.00 sec)
−
একই মান আছে এমন সারিগুলি গণনা করতে আমরা শুরুতে আলোচনা করা সিনট্যাক্সটি প্রয়োগ করুনmysql> SELECT StudentMarks, count(*) as SameValue from RowWithSameValue GROUP BY StudentMarks;
নিম্নোক্ত আউটপুট যা একাধিক মানের সংখ্যা প্রদর্শন করে −
+--------------+-----------+ | StudentMarks | SameValue | +--------------+-----------+ | 89 | 3 | | 99 | 1 | +--------------+-----------+ 2 rows in set (0.00 sec)