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

MySQL-এ বড় হাতের অক্ষর (Capital Letter) থাকা ফিল্ড খুঁজে বের করা


MySQL-এ RLIKE ও BINARY CAST দিয়ে কেস-সেনসিটিভ সার্চ

কলামে কমপক্ষে একটি বড় হাতের অক্ষর (A-Z) আছে কিনা চেক করতে RLIKE (রেজেক্স লাইক) সাথে CAST(... AS BINARY) ব্যবহার করা হয়। এটি কেস-সেনসিটিভ ম্যাচিং নিশ্চিত করে।

সিনট্যাক্স

SELECT * FROM yourTableName 
WHERE CAST(yourColumnName AS BINARY) RLIKE '[A-Z]';

উদাহরণ সহ ব্যাখ্যা

টেবিল তৈরি:

mysql> CREATE TABLE contains_capital_letterDemo (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name VARCHAR(100)
    -> );

ডেটা ইনসার্ট (মিশ্র কেস):

mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('Larry');
mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('larry');
mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('john');
mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('JOHN');
mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('mike');
mysql> INSERT INTO contains_capital_letterDemo(Name) VALUES('Mike');

সব ডেটা:

mysql> SELECT * FROM contains_capital_letterDemo;
+----+-------+
| Id | Name  |
+----+-------+
| 1  | Larry |
| 2  | larry |
| 3  | john  |
| 4  | JOHN  |
| 5  | mike  |
| 6  | Mike  |
+----+-------+

বড় হাতের অক্ষর থাকা রো খুঁজে বের করি:

mysql> SELECT * FROM contains_capital_letterDemo 
    -> WHERE CAST(Name AS BINARY) RLIKE '[A-Z]';

ফলাফল:

+----+-------+
| Id | Name  |
+----+-------+
| 1  | Larry |
| 4  | JOHN  |
| 6  | Mike  |
+----+-------+

ব্যাখ্যা: CAST(Name AS BINARY) স্ট্রিংকে বাইনারি স্ট্রিং-এ রূপান্তর করে, ফলে রেজেক্স কেস-সেনসিটিভভাবে কাজ করে। RLIKE হল REGEXP-র сиনোনিম।

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

  2. MySQL에서 데이터베이스의 테이블 개수 조회하기

  3. MySQL에서 중복 튜플 찾기와 개수 세기 (GROUP BY HAVING)

  4. MySQL-এ information_schema.columns থেকে টেবিলের সব ফিল্ড (কলাম) দেখানো