MySQL-এ BINARY অপারেটর ব্যবহার করে কেস-সেনসিটিভ সার্চ
MySQL ডিফল্টভাবে কেস-ইনসেনসিটিভ (case-insensitive) সার্চ করে। সঠিক বড়/ছোট হাতের অক্ষর (case-sensitive) মিল করতে BINARY কীওয়ার্ড ব্যবহার করতে হয়।
সিনট্যাক্স
SELECT * FROM yourTableName WHERE BINARY yourColumnName = 'yourStringValue';
উদাহরণ
টেবিল তৈরি
mysql> CREATE TABLE ExactSearch (
-> Id INT NOT NULL AUTO_INCREMENT,
-> UserId VARCHAR(10),
-> UserName VARCHAR(20),
-> PRIMARY KEY(Id)
-> );
ডেটা ইনসার্ট
mysql> INSERT INTO ExactSearch(UserId, UserName) VALUES('USER12', 'John');
mysql> INSERT INTO ExactSearch(UserId, UserName) VALUES('12USER', 'Carol');
mysql> INSERT INTO ExactSearch(UserId, UserName) VALUES('USER123', 'Bob');
mysql> INSERT INTO ExactSearch(UserId, UserName) VALUES('USER231', 'Sam');
সকল রেকর্ড দেখানো
mysql> SELECT * FROM ExactSearch;
আউটপুট
+----+---------+----------+ | Id | UserId | UserName | +----+---------+----------+ | 1 | USER12 | John | | 2 | 12USER | Carol | | 3 | USER123 | Bob | | 4 | USER231 | Sam | +----+---------+----------+
সঠিক স্ট্রিং 'USER123' খুঁজে বের করা
mysql> SELECT * FROM ExactSearch WHERE BINARY UserId = 'USER123';
ফলাফল
+----+---------+----------+ | Id | UserId | UserName | +----+---------+----------+ | 3 | USER123 | Bob | +----+---------+----------+
নোট: BINARY ছাড়া কোয়েরি চালালে user123 বা User123 ও মিলে যেতে পারে, কিন্তু BINARY ব্যবহার করলে শুধু একদম সঠিক বড়/ছোট হাতের মিলই ফেরত দেয়।