MySQL INSTR() ফাংশন
instr() ফাংশন ব্যবহার করে, আমরা একটি স্ট্রিং এবং একটি সাবস্ট্রিং প্রদান করতে পারি। সোর্স স্ট্রিং-এ সাবস্ট্রিং বিদ্যমান কিনা তা ফাংশন নির্ধারণ করবে। সাবস্ট্রিং বিদ্যমান থাকলে, ফাংশনটি উৎস স্ট্রিং-এ সাবস্ট্রিং-এর প্রথম উপস্থিতির অবস্থান ফিরিয়ে দেবে।
সোর্স স্ট্রিং-এ সাবস্ট্রিং না থাকলে, ফাংশনটি 0 রিটার্ন করবে।
নিম্নলিখিতগুলি instr() ফাংশনের সিনট্যাক্স প্রদর্শন করে:
INSTR(src_string, sub_string);
ফাংশন দুটি প্রধান পরামিতি গ্রহণ করে:
- src_string সেই উৎস স্ট্রিংকে বোঝায় যেখানে আপনি অনুসন্ধান করতে চান।
- sub_string আপনি যে সাবস্ট্রিংটির জন্য অনুসন্ধান করছেন তা সংজ্ঞায়িত করে।
এটা মনে রাখা ভাল যে instr() ফাংশন কেস-সংবেদনশীল। সুতরাং, ফাংশনটি কেবল অক্ষরের আবরণকে উপেক্ষা করে মিলিত নিদর্শনগুলি সনাক্ত করবে,
একটি কেস-সংবেদনশীল অনুসন্ধান সম্পাদন করতে, আপনি বাইনারি অপারেটরের মতো অন্যান্য সরঞ্জামগুলি ব্যবহার করতে পারেন৷
উদাহরণ ফাংশন ব্যবহার
নিম্নলিখিত উদাহরণগুলি দেখায় কিভাবে আমরা একটি নির্দিষ্ট সাবস্ট্রিং অনুসন্ধান করতে instr() ফাংশন ব্যবহার করতে পারি।
PO হিসাবে INSTR('MySQL is an awesome database engine', 'database') সিলেক্ট করুন;
উপরের উদাহরণটি উৎস স্ট্রিং থেকে স্ট্রিং 'ডাটাবেস' এর শুরুর অবস্থান ফিরিয়ে দেবে। এই ক্ষেত্রে, ডাটাবেস স্ট্রিং এর অবস্থান 21 নীচের আউটপুট হিসাবে দেখানো হয়েছে:
pos|---+
21|
উদাহরণ 2
একটি স্ট্রিংকে ছোট হাতের বা বড় হাতের অক্ষরে রূপান্তর করতে আমরা Lower() বা আপার ফাংশন ব্যবহার করতে পারি। এটি আমাদের ফাংশনের কেস-সংবেদনশীলতা প্রকৃতি অতিক্রম করতে সাহায্য করতে পারে।
উদাহরণ:
INSTR(lower('MySQL is an awesome database engine'), low('DATABASE')) as pos;ফলাফল:
pos|
---+
21|
এটি প্রথম উদাহরণের মতো একই মান ফিরিয়ে দেবে, কারণ অনুসন্ধান অপারেশনের আগে উৎস স্ট্রিং এবং সাবস্ট্রিং ছোট হাতের অক্ষরে রূপান্তরিত হয়।
উদাহরণ 3
আমরা একটি টেবিল কলামের সাথে instr() ফাংশনটিও ব্যবহার করতে পারি, যেমনটি নীচের সিনট্যাক্সে দেখানো হয়েছে।
INSTR নির্বাচন করুন(কলাম_নাম, 'সাবস্ট্রিং')টেবিল_নাম থেকে;
উদাহরণ:
টেবিল ব্লগ তৈরি করুন (আইডি শূন্য নয় স্বয়ংক্রিয়_INCREMENT প্রাথমিক কী,
শিরোনাম VARCHAR(255) শূন্য নয়,
বিষয়বস্তু পাঠ্য শূন্য নয়,
date_posted DATE NULL নয়,
লেখক VARCHAR(255) শূন্য নয়
);
কিছু তথ্য সন্নিবেশ করান:
ব্লগে ঢোকান (শিরোনাম, বিষয়বস্তু, তারিখ_পোস্ট করা, লেখক)
VALUES ('আমার প্রথম ব্লগ পোস্ট', 'এটি আমার প্রথম ব্লগ পোস্টের বিষয়বস্তু।', '2022-12-09', 'জেন ডো');
ব্লগে ঢোকান (শিরোনাম, বিষয়বস্তু, তারিখ_পোস্ট করা, লেখক)
VALUES ('আমার দ্বিতীয় ব্লগ পোস্ট', 'এটি আমার দ্বিতীয় ব্লগ পোস্টের বিষয়বস্তু।', '2022-12-10', 'জেন ডো');
ব্লগে ঢোকান (শিরোনাম, বিষয়বস্তু, তারিখ_পোস্ট করা, লেখক)
VALUES ('আমার তৃতীয় ব্লগ পোস্ট', 'এটি আমার তৃতীয় ব্লগ পোস্টের বিষয়বস্তু।', '2022-12-11', 'জেন ডো');
ব্লগ থেকে * নির্বাচন করুন;
ফলাফল টেবিল:
আমরা দেখানো হিসাবে বিষয়বস্তু কলামে সাবস্ট্রিং 'ব্লগ'-এর অবস্থান পেতে instr() ফাংশন ব্যবহার করতে পারি:
ব্লগ থেকে শিরোনাম, instr(সামগ্রী, 'পোস্ট') নির্বাচন করুন;ফলাফল:
উপসংহার
এই টিউটোরিয়ালে, আপনি শিখেছেন কিভাবে MySQL-এ INSTR() ফাংশন ব্যবহার করে একটি স্ট্রিং-এর মধ্যে একটি সাবস্ট্রিং-এর অবস্থান খুঁজে বের করতে হয়। ফাংশন কেস-সংবেদনশীল. অতএব, আপনার পছন্দসই ক্ষেত্রে অনুসন্ধান স্ট্রিংগুলিকে রূপান্তর করতে আপনাকে নিম্ন এবং উপরের মত ফাংশনগুলি ব্যবহার করতে হতে পারে।