PHP-র stripos()-এর সমতুল্য MySQL-এ INSTR() ফাংশন, যা একটি স্ট্রিংয়ের ভিতরে অন্য স্ট্রিংয়ের প্রথম আবির্ভাবের পজিশন রিটার্ন করে (১-ভিত্তিক)। সিনট্যাক্স:
SELECT INSTR(yourColumnName, 'yourWord') AS anyAliasName FROM yourTableName;
প্রথমে একটি টেবিল তৈরি করি:
mysql> CREATE TABLE DemoTable (Title TEXT);
রেকর্ড যোগ করি:
mysql> INSERT INTO DemoTable VALUES('MySQL is my favourite subject');
mysql> INSERT INTO DemoTable VALUES('MongoDB is not my favourite subject');
সকল রেকর্ড দেখতে:
mysql> SELECT * FROM DemoTable;
আউটপুট:
+-------------------------------------+ | Title | +-------------------------------------+ | MySQL is my favourite subject | | MongoDB is not my favourite subject | +-------------------------------------+
'favourite' শব্দের প্রথম পজিশন বের করা:
mysql> SELECT INSTR(Title, 'favourite') AS Position FROM DemoTable;
আউটপুট:
+----------+ | Position | +----------+ | 13 | | 19 | +----------+
ব্যাখ্যা:
INSTR(str, substr):substr-এর প্রথম আবির্ভাবের পজিশন রিটার্ন করে (১-ভিত্তিক)। না পেলে ০ রিটার্ন করে।- কেস-ইনসেনসিটিভ (ডিফল্ট কোলেশন
utf8_general_ciহলে)।
পার্থক্য PHP-র stripos()-এর সাথে:
stripos(): ০-ভিত্তিক ইনডেক্স রিটার্ন করে, FALSE বা ইন্টিজার।INSTR(): ১-ভিত্তিক ইনডেক্স রিটার্ন করে, সবসময় ইন্টিজার।
কেস-সেনসিটিভ খোঁজার জন্য: INSTR(Title, 'favourite' COLLATE utf8_bin) বা LOCATE('favourite', Title) (একই কাজ করে)।’