MySQL-এ টেক্সট কলামের ভিতরে স্ট্রিং সার্চ করতে LIKE ক্লজ ব্যবহার করতে পারেন। সিনট্যাক্স:
SELECT * FROM yourTableName WHERE yourColumnName LIKE '%anyStringValue%';
সিনট্যাক্স ব্যবহার করতে একটি টেবিল তৈরি করি:
mysql> CREATE TABLE SearchTextDemo (
-> BookName TEXT
-> ); Query OK, 0 rows affected (0.55 sec)
টেবিলে কিছু স্ট্রিং ইনসার্ট করি:
mysql> INSERT INTO SearchTextDemo VALUES('Let us C'); Query OK, 1 row affected (0.28 sec)
mysql> INSERT INTO SearchTextDemo VALUES('C in Depth'); Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO SearchTextDemo VALUES('C in Depth with Data Structure'); Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO SearchTextDemo VALUES('Introduction to Java'); Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO SearchTextDemo VALUES('Java in Depth'); Query OK, 1 row affected (0.13 sec)
সিলেক্ট স্টেটমেন্ট দিয়ে সব রেকর্ড দেখি:
mysql> SELECT * FROM SearchTextDemo;
আউটপুট:
+--------------------------------+ | BookName | +--------------------------------+ | Let us C | | C in Depth | | C in Depth with Data Structure | | Introduction to Java | | Java in Depth | +--------------------------------+ 5 rows in set (0.00 sec)
টেক্সট কলামে নির্দিষ্ট স্ট্রিং সার্চ করার ক্যোয়ারি:
mysql> SELECT * FROM SearchTextDemo WHERE BookName LIKE '%in Depth%';
আউটপুট:
+--------------------------------+ | BookName | +--------------------------------+ | C in Depth | | C in Depth with Data Structure | | Java in Depth | +--------------------------------+ 3 rows in set (0.00 sec)
উপরের আউটপুটে দেখুন, 'BookName' কলাম থেকে 'in Depth' স্ট্রিং সার্চ করা হয়েছে যার ডেটা টাইপ TEXT।