خوش آموز اولین و تنها سایت آموزشی %100 رایگان ایران با 4666 آموزش متنی، تصویری و ویدئویی

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر

کد مطلب : 1285 PDF

نرم افزار اس کیو ال سرور دارای توابع داخلی زیادی می باشد، هر چقدر بر روی این توابع بیشتر مسلط باشید، قدرت مانور شما در اسکریپت نویسی اس کیو ال بیشتر خواهد شد. امروز با یکی دیگر از توابع داخلی اس کیو ال سرور با نام CHARINDEX آشنا می شویم. کاربرد تابع CHARINDEX پیدا کردن موقعیت یک متن داخل یک متن دیگر می باشد.

دوره آموزش رایگان ریاضی پایه و جبر

تابع CHARINDEX سه پارامتر ورودی دارد، پارامتر اول متنی است که قرار است موقعیت آن یافت شود و برگردانده شود. پارامتر دوم متنی است که مورد جستجو قرار خواهد گرفت. پارامتر سوم هم موقعیت آغاز جستجو می باشد که به صورت پیش فرض مقدار 1 دارد، یعنی جستجو از اولین حرف موجود آغاز خواهد شد.

برای گذراندن این دوره آموزشی لازم است تا فایل بک آپ مربوط به دیتابیسی که مثالهای این دوره با آن دیتابیس ایجاد شده است را دانلود کنید و در محیط اس کیو ال سرور بازیابی نمایید.


مثالهایی از کاربرد تابع CHARINDEX در اس کیو ال سرور


برای درک بهتر کاربرد تابع CHARINDEX به مثالهای زیر توجه کنید و سعی کنید خودتان آنها را انجام بدهید.

SELECT CHARINDEX('ir','khoshamoz.ir',1)

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر
در این مثال متن "ir" در داخل متن "khoshamoz.ir" مورد جستجو قرار گرفته است. همانطور که می بینید، خروجی تابع عدد 11 می باشد. اگر از ابتدای متن "khoshamoz.ir" کاراکترها را یکی یکی شمارش کنید، در کاراکتر 11 به متن "ir" خواهید رسید.

به دو مثال زیر توجه کنید. در هر دو مثال ما حرف "o" را در متن "khoshamoz.ir" مورد جستجو قرار داده ایم. تفاوت این دو مثال در اینست که در اولی از موقعیت 1 جستجو را آغاز کرده ایم و در دومی از موقعیت 4 جستجو را آغاز کرده ایم. به خروجی ها و تفاوت آنها دقت کنید.

SELECT CHARINDEX('o','khoshamoz.ir',1)

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر
SELECT CHARINDEX('o','khoshamoz.ir',4)

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر
در دستور زیر با استفاده از تابع CHARINDEX موقعیت حرف D را در داخل فیلد lastname مورد جستجو قرار داده ایم و خروجی آن را در ستونی با نام مستعار D_Position نمایش داده ایم. مواردی که عدد 0 را نشان می دهد به این معنا می باشد که حرف D در آنجا یافت نشده است.

SELECT empid, firstname, lastname
,CHARINDEX('D', lastname, 1) AS D_Position
FROM HR.Employees;

24. استفاده از تابع CHARINDEX برای پیدا کردن محل یک متن داخل متنی دیگر

آموزش قبلی : 23. استفاده از دستور Substring و استخراج بخشی از متن توسط آن

آموزش بعدی : 25. استفاده از تابع LEN برای پیدا کردن طول یک متن



نویسنده : امیر انصاری

دیدگاه ها(0)

دیدگاه خود را ثبت کنید:


آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی

آموزش پایگاه داده اس کیو ال سرور به زبان ساده از مبتدی تا پیشرفته بصورت کاملا کاربردی