SUBSTRING (SUBSTRING)
در این بخش با تابع SUBSTRING در MySQL آشنا می شویم. این تابع یک زیررشته (Substring) از رشته می گیرد. یعنی تکه ای از متن را می بُرد. جای شروع را می دهی و می توانی طول را هم بدهی. مثل بریدن بخشی از اسم در دفتر مدرسه است.
تعریف کوتاه و کاربرد
تابع SUBSTRING() از هر جای رشته می بُرد. ورودی ها: رشته، شروع، و طول اختیاری. اگر طول ندهی، تا آخر رشته می بُرد.
نکته: SUBSTR() و MID() با SUBSTRING یکسان اند و همان کار را انجام می دهند.
سینتکس (Syntax)
SUBSTRING(string, start, length);
SUBSTRING(string FROM start FOR length);
پارامترها
- string: رشته اصلی برای برش.
- start: موقعیت شروع. مثبت از ابتدا، منفی از انتها.
- length: تعداد کاراکترها. اگر خالی باشد، تا پایان می بُرد.
هشدار: اگر start از طول رشته جلوتر باشد، نتیجه خالی است. این طبیعی است.
مثال 1: برش ساده
از جایگاه 5، سه کاراکتر بردار.
SELECT SUBSTRING("SQL Tutorial", 5, 3) AS ExtractString;
مثال 2: برش از ستون جدول
از نام مشتری، از جایگاه 2 پنج کاراکتر بردار.
SELECT SUBSTRING(CustomerName, 2, 5) AS ExtractString FROM Customers;
مثال 3: شروع از انتها
از انتها، از جایگاه منفی 5 پنج کاراکتر بردار.
SELECT SUBSTRING("SQL Tutorial", -5, 5) AS ExtractString;
راهنمای اندیس ها
اندیس (Index) یعنی شماره کاراکترها. 1 یعنی اولین کاراکتر. -1 یعنی آخرین کاراکتر. مثل شماره صندلی ها در کلاس است؛ می توانی از آخر هم بشماری.
تمرین سه گامی
- یک رشته انتخاب کن. مثلا نام بازی موردعلاقه.
- start را تغییر بده. مثبت و منفی را امتحان کن.
- length را کم وزیاد کن. نتیجه را بررسی کن.
برای مقایسه، صفحه تابع SUBSTR در MySQL را هم ببین. کاربردها یکسان اند.
جمع بندی سریع
- SUBSTRING زیررشته برمی دارد.
- start مثبت از ابتدا، منفی از انتهاست.
- length اختیاری است.
- با SUBSTR و MID برابر است.
- مثال ها را در ادیتور اجرا کن.