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

MySQL-এ 와일্ডকার্ড (%%) দিয়ে সার্চ পারফরম্যান্স উন্নত করা সম্ভব কিনা?

নहीं, যদি আপনার কোয়েরিতে লিডিং 와일্ডকার্ড (যেমন %letter%) থাকে, তবে MySQL সার্চ পারফরম্যান্স উন্নত করতে পারবে না কারণ MySQL ইন্ডেক্স ব্যবহার করতে পারবে না। যদি আপনি 'anyLetter%' (ট্রেইলিং 와일্ডকার্ড) ব্যবহার করেন, তবে ইন্ডেক্স ব্যবহার করতে পারবে।

ট্রেইলিং 와일্ডকার্ডসহ নিচের সিনট্যাক্সটি ব্যবহার করা ভালো। সিনট্যাক্স নিচে দেওয়া হলো:

SELECT *FROM yourTableName WHERE yoorColumnName LIKE 'anyLetter%';

টেবিল তৈরির কোয়েরি নিচে দেওয়া হলো:

mysql> create table TrailingWildCardDemo 
-> ( 
-> Id int NOT NULL AUTO_INCREMENT, 
-> Name Varchar(20), 
-> PRIMARY KEY(Id) 
-> ); Query OK, 0 rows affected (0.71 sec)

ইনসার্ট কমান্ড দিয়ে কিছু রেকর্ড ইনসার্ট করা যাক। কোয়েরিটি হলো:

mysql> insert into TrailingWildCardDemo(Name) values('John'); Query OK, 1 row affected (0.13 sec) mysql> insert into TrailingWildCardDemo(Name) values('Johnson'); Query OK, 1 row affected (0.17 sec) mysql> insert into TrailingWildCardDemo(Name) values('Mike'); Query OK, 1 row affected (0.16 sec) mysql> insert into TrailingWildCardDemo(Name) values('Kevin'); Query OK, 1 row affected (0.23 sec) mysql> insert into TrailingWildCardDemo(Name) values('Adam'); Query OK, 1 row affected (0.20 sec) mysql> insert into TrailingWildCardDemo(Name) values('Ethan'); Query OK, 1 row affected (0.16 sec) mysql> insert into TrailingWildCardDemo(Name) values('James'); Query OK, 1 row affected (0.19 sec)

সিলেক্ট স্টেটমেন্ট দিয়ে সব রেকর্ড দেখানো যাক। কোয়েরিটি হলো:

mysql> select *from TrailingWildCardDemo;

আউটপুট নিচে দেওয়া হলো:

+----+---------+ | Id | Name | +----+---------+ | 1 | John | | 2 | Johnson | | 3 | Mike | | 4 | Kevin | | 5 | Adam | | 6 | Ethan | | 7 | James | +----+---------+ 7 rows in set (0.00 sec)

ট্রেইলিং 와일্ডকার্ডের কোয়েরি নিচে দেওয়া হলো:

mysql> select *from TrailingWildCardDemo where Name LIKE 'j%';

আউটপুট নিচে দেওয়া হলো:

+----+---------+ | Id | Name | +----+---------+ | 1 | John | | 2 | Johnson | | 7 | James | +----+---------+ 3 rows in set (0.00 sec)

ব্যাখ্যা: LIKE 'j%' (ট্রেইলিং 와일্ডকার্ড) ব্যবহার করলে MySQL ইন্ডেক্স (ইফ এনাই) ব্যবহার করে সিক করাতে পারে, যা খুব দ্রুত। কিন্তু LIKE '%j%' (লিডিং এবং ট্রেইলিং উভয়েই 와일্ডকার্ড) ব্যবহার করলে ফুল টেবিল স্ক্যান হয়, যা বড় টেবিলে ধীর। সার্চ পারফরম্যান্স উন্নত করতে ফুলটেক্স্ট সার্চ (FULLTEXT INDEX, MATCH()...AGAINST()) বা এক্সটার্নাল সার্চ ইঞ্জিন (Elasticsearch) ব্যবহার করা ভালো।

  1. Mz 7 Optimizer দিয়ে উইন্ডোজ পারফরম্যান্স উন্নত করুন

  2. Apache-এ MySQL ব্যবহার (Using MySQL with Apache)

  3. ইউটিউব সার্চ বাড়ান: সঠিক ফলাফলের জন্য অ্যাডভান্সড অপারেটর মাস্টার করুন

  4. Advanced System Optimizer দিয়ে উইন্ডোজ স্পিড বাড়ান – প্রমাণিত পারফরম্যান্স গেইন