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

MySQL-এ REGEXP ব্যবহার করে শুধু নম্বরিক সারি বের করা

যদি একটি কালামে মিশ্র ডেটা (স্ট্রিং + নম্বর) থাকে এবং আপনি শুধু যেসব সারিতে শুধু নম্বর আছে সেগুলো বের করতে চান, তবে REGEXP '^[0-9]+$' প্যাটার্ন ব্যবহার করা হয়।

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

mysql> CREATE TABLE DemoTable (
    -> StudentId VARCHAR(100)
    -> );
Query OK, 0 rows affected (0.51 sec)

mysql> INSERT INTO DemoTable VALUES('John74747');
mysql> INSERT INTO DemoTable VALUES('8494575Carol');
mysql> INSERT INTO DemoTable VALUES('985755645');
mysql> INSERT INTO DemoTable VALUES('Carol-9032');
mysql> INSERT INTO DemoTable VALUES('101');

সকল রেকর্ড

+--------------+
| StudentId    |
+--------------+
| John74747    |
| 8494575Carol |
| 985755645    |
| Carol-9032   |
| 101          |
+--------------+

শুধু নম্বরিক সারি বের করা

mysql> SELECT * FROM DemoTable WHERE StudentId REGEXP '^[0-9]+$';

আউটপুট:

+-----------+
| StudentId |
+-----------+
| 985755645 |
| 101       |
+-----------+

ব্যাখ্যা: ^[0-9]+$ মানে শুরু থেকে শেষ পর্যন্ত এক বা একাধিক ডিজিট। অন্য যেকোনো ক্যারেক্টার থাকলে ম্যাচ করবে না।

  1. MySQL কোয়ারি: শুধু NULL মান 가진 সারিগুলো তুলনা করে প্রদর্শন করা

  2. MySQL-এ স্ট্রিং ফিল্ডের সংখ্যাসূচক অক্ষর দিয়ে সারি গোষ্ঠীকরণ করা

  3. MySQL-এ LEFT() ফাংশন দিয়ে বাম পাশ থেকে ১৫ ক্যারেক্টার বের করা

  4. MySQL-এ নির্দিষ্ট কলাম থেকে শুধু 'NO' মান সংখ্যা বের করা