উত্তর:
CHARINDEX () বৃহত্তর স্ট্রিংয়ের মধ্যে একটি স্ট্রিং অনুসন্ধান করে এবং ম্যাচের সন্ধান দেয়, বা কোনও মিল না পাওয়া গেলে 0
if CHARINDEX('ME',@mainString) > 0
begin
--do something
end
ড্যানিয়েলসের উত্তরগুলি সম্পাদনা করুন বা থেকে, আপনি যদি কোনও শব্দ (এবং শব্দের উপ-উপাদান নয়) সন্ধান করতে চান তবে আপনার চরিনডেক্স কলটি দেখতে এমন হবে:
CHARINDEX(' ME ',' ' + REPLACE(REPLACE(@mainString,',',' '),'.',' ') + ' ')
(আরও পুনরাবৃত্তির প্রস্তাব যুক্ত করুন () ঘটতে পারে এমন যে কোনও বিরামচিহ্নের জন্য কল
REPLACE
নিজেকে বলা হয়; "নেস্টেড" হ'ল যখন কোনও ফাংশন কলের ফলাফল অবিলম্বে অন্য কোনও ফাংশনে প্রেরণ করা হয়।
select CHARINDEX('ME' collate Latin1_General_CS_AS,'Home')
এবং select CHARINDEX('ME' collate Latin1_General_CI_AS,'Home')
। (সমষ্টিগুলিতে, CS
কেস সেনসিটিভ হিসাবে বোঝায় এবং আমি নিশ্চিত যে আপনি কাজ করতে পারেন CI
)।
আপনি প্রিডিকেটে কেবল ওয়াইল্ডকার্ড ব্যবহার করতে পারেন (যদি, যেখানে বা অন্যদিকে):
@mainstring LIKE '%' + @substring + '%'
বা এই নির্দিষ্ট ক্ষেত্রে
' ' + @mainstring + ' ' LIKE '% ME[., ]%'
(আপনি যদি পুরো শব্দটি সন্ধান করছেন তবে উদ্ধৃত স্ট্রিংগুলিতে ফাঁকা স্থান রাখুন, বা যদি আমাকে আরও বড় শব্দের অংশ হতে পারে তবে এগুলি ছেড়ে দিন)।
N
আপনার কলামটি যদি একটি হয় তবে আপনার সমস্ত স্ট্রিং ধ্রুবকগুলির উপসর্গটি কেবল ভুলে যাবেন না nvarchar
, অন্যথায় আপনি প্রতি সারি রূপান্তর পান)