تابع LOCATE در SQL
با استفاده از تابع LOCATE در SQL می توانیم موقعیت مکانی یک رشته را در یک رشته دیگر جستجو کنیم.
مثال
در مثال زیر ما کلمه s
را در رشته "www.bubbleslearn.ir"
جستجو میکنیم.
SELECT LOCATE("s" IN "www.bubbleslearn.ir") AS MatchPosition;
خروجی
MatchPosition |
11 |
توجه: این تابع موقعیت اولین رشته ای را که پیدا می کند بر میگرداند یعنی اگر حرف s
را داخل "System Test"
جستجو بکنیم موقعیت مکانی اولین رشته s را برمیگرداند و به بقیه کاری ندارد.
اگر زیر رشته ای که در رشته اصلی جستجو میکنیم پیدا نشود ، تابع عدد 0 را بر میگرداند.
نکته: این تابع به حروف کوچک و بزرگ حساس نیست.
همچنین تابع POSITION()
مشابه تابع LOCATE()
می باشد و باهم برابر هستند.
همانطور که در مثال های بالا اشاره شد نحوه استفاده از تابع LOCATE()
به این شکل است:
LOCATE(substring IN string)
مقادیر پارامتر ها
پارامتر | توضیحات |
---|---|
substring | زیر رشته را برای جستجو در رشته اصلی مشخص می کند ، استفاده از این پارامتر ضروری است |
string | رشته اصلی که باید جستجو شود را مشخص می کند ، استفاده از این پارامتر ضروری است |
start | نقطه شروع برای جستجو را مشخص می کند ، به طور پیش فرض 1 هست ، استفاده از این پارامتر ضروری است |
اطلاعات فنی
پشتیبانی شده در MySQL 4.0
مثال های بیشتر
دستور زیر ، رشته "a"
را در ستون CustomerName
که داخل جدول Customers
قرار دارد جستجو می کند.
SELECT LOCATE("a" IN CustomerName)
FROM Customers;
دستور زیر ، رشته "s"
را از موقعیت مکانی 5 شروع می کند که این باعث می شود موقعیت مکانی دو زیر رشته اول به عنوان خروجی برگردانده نشود.
SELECT LOCATE("s", "System Test", 5) AS MatchPosition;
خروجی
MatchPosition |
10 |
آیا این مطلب برای شما مفید بود ؟