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

MySQL-এ সঠিক স্ট্রিং মান খুঁজে বের করা (COLLATE ব্যবহার)

সমস্যা

ডিফল্ট কোলেশন কেস-ইনসেনসিটিভ (case-insensitive), তাই 'mysql', 'MySQL', 'MYSQL' সব একসমান বিবেচিত হয়। সঠিক কেস-সেনসিটিভ মিলানের জন্য কোলেশন পরিবর্তন করতে হয়।

সারণি ও ডেটা

mysql> create table DemoTable1620 (Subject varchar(20));
mysql> insert into DemoTable1620 values('mysql'),('MySql'),('mYSQL'),('MySQL'),('MYSQL');

কোয়েরি

mysql> select * from DemoTable1620 where Subject collate utf8_bin = 'MySQL';

ফলাফল

+---------+
| Subject |
+---------+
| MySQL   |
+---------+

ব্যাখ্যা

  • COLLATE utf8_bin — বাইনারি তুলনা করে, যেখানে প্রতিটি বাইট আলাদা বিবেচিত হয় (কেস-সেনসিটিভ)
  • অন্যান্য অপশন: utf8mb4_bin, latin1_bin ইত্যাদি
  • কলাম সংজ্ঞায় পরিমাণে কোলেশন সেট করাও যায়: Subject varchar(20) COLLATE utf8_bin

দ্রষ্টব্য: ইনডেক্স ব্যবহার করতে হলে কলামের কোলেশন কোয়েরির কোলেশনের সাথে মিল থাকা উচিত।

  1. জাভাস্ক্রিপ্টে স্ট্রিং সার্চ করার পদ্ধতি

  2. MySQL에서 ^(캐럿) 문자가 포함된 컬럼명 찾기 (INFORMATION_SCHEMA 활용)

  3. MySQL-এ স্ট্রিংয়ের প্রথম পুনরাবৃত্ত মানটিই রিপ্লেস করা

  4. C#-এ স্ট্রিং-এর হ্যাশকোড পান