কম্পিউটার টিউটোরিয়াল

MySQL-এ SUBSTRING ও GROUP BY ব্যবহার করে নির্দিষ্ট আক্ষরিকের সাথে শুরু হওয়া রেকর্ড গণনা

কলাম মানগুলো নির্দিষ্ট আক্ষরিক বা আক্ষরিক যুগল দিয়ে শুরু হয় কিনা তা চেক করে গুনতে SUBSTRING() বা LEFT() এবং GROUP BY ব্যবহার করা হয়।

টেবিল তৈরি ও ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable775 (FirstName VARCHAR(100));
Query OK, 0 rows affected (0.78 sec)
mysql> INSERT INTO DemoTable775 VALUES ('Adam');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable775 VALUES ('Carol');
Query OK, 1 row affected (0.22 sec)
mysql> INSERT INTO DemoTable775 VALUES ('John');
Query OK, 1 row affected (0.16 sec)
mysql> INSERT INTO DemoTable775 VALUES ('Sam');
Query OK, 1 row affected (0.19 sec)
mysql> INSERT INTO DemoTable775 VALUES ('Adan');
Query OK, 1 row affected (0.15 sec)

রেকর্ড দেখানো

mysql> SELECT * FROM DemoTable775;

আউটপুট:

+-----------+
| FirstName |
+-----------+
| Adam      |
| Carol     |
| John      |
| Sam       |
| Adan      |
+-----------+
5 rows in set (0.00 sec)

প্রথম ২ অক্ষর অনুযায়ী গ্রুপ করে গণনা

mysql> SELECT COUNT(*), SUBSTRING(FirstName, 1, 2) 
FROM DemoTable775 
GROUP BY SUBSTRING(FirstName, 1, 2);

ফলাফল:

+----------+--------------------------+
| COUNT(*) | SUBSTRING(FirstName,1,2) |
+----------+--------------------------+
| 2        | Ad                       |
| 1        | Ca                       |
| 1        | Jo                       |
| 1        | Sa                       |
+----------+--------------------------+
4 rows in set (0.00 sec)

ব্যাখ্যা

  • SUBSTRING(FirstName, 1, 2) - ১ নম্বর পজিশন থেকে ২ অক্ষর নেয় (আদম, আদান -> 'Ad')।
  • LEFT(FirstName, 2) - একই কাজ করে, আরও পঠনযোগ্য।
  • GROUP BY - একই প্রিফিক্স वालাগুলো একসাথে গোষ্ঠীভুক্ত করে।

নির্দিষ্ট প্রিফিক্সের জন্য ফিল্টার

SELECT COUNT(*) FROM DemoTable775 
WHERE FirstName LIKE 'Ad%'; -- 'Ad' দিয়ে শুরু হওয়া ২টি
  1. MySQL-এ একটি কোয়েরি দিয়ে নির্দিষ্ট রেকর্ডের (ডুপ্লিকেট) আওতা গণনা করা

  2. MySQL-এ COUNT() এর ভিতরে CASE শর্ত ব্যবহার করে গণনা করা

  3. MySQL에서 STR_TO_DATE로 날짜 형식 변환 후 특정 날짜 이후 레코드 조회

  4. MySQL-এ IN() অপারেটর দিয়ে একক কোয়েরিতে একাধিক রেকর্ড ডিলিট করা