تابع SUBSTRING:
این تابع، قسمتی از یک عبارت را برمی گرداند.
نحوه استفاده:
SUBSTRING ( value_expression, start_expression, length_expression)
پارامترها:
پارامتر |
توضیح |
value_expression |
یک عبارت از نوع character, binary, text, ntext و یا image است. (اجباری است)
|
start_expression
|
یک عبارت عددی است که محل شروع کاراکترهایی که برگشت می شوند را مشخص می کند. اگر start_expressionکوچکتر از 1 باشد عبارت برگشتی از کاراکتر اول value_expressionشروع می شود. start_expression می تواند از نوع bigint باشد. (اجباری است)
|
length_expression |
یک عبارت عددی مثبت است که تعداد کاراکترهایی که باید برگشت شوند را مشخص می کند. اگر length_expressionمنفی باشد یک Error تولید می شود. length_expression می تواند از نوع bigint باشد. (اجباری است)
|
نوع داده خروجی(Return Type):
در جدول زیر، براساس نوع پارامتر value_expression، نوع داده خروجی نشان داده شده است:
نوع پارامتر value_expression |
نوع داده خروجی |
char/varchar/text
|
varchar
|
nchar/nvarchar/ntext
|
nvarchar
|
binary/varbinary/image
|
varbinary
|
تذکر:
1- زمانی که start_expression یا length_expressionبا یک مقدار بزرگتر از 2147483647 تنظیم شود، value_expression باید یکی از انواع زیر باشد:
varchar(max) یا varbinary(max)
2- سطح Compatibility پایگاه داده در مقدار برگشتی می تواند موثر باشد. برای اطلاعات بیشتر درباره compatibility به لینک زیر مراجعه کنید:
sp_dbcmptlevel (Transact-SQL)
3- مقادیر پارامترهای start_expression و length_expression باید براساس نوع رشته ورودی تنظیم شود. مثلاً اگر رشته ورودی از نوع ntext ،char و یا varchar باشد باید تعدادی از کاراکترها در نظر گرفته شود و اگر از نوع text, image, binary و یا varbinary است باید تعدادی از بایت ها در نظر گرفته شود.
مثال1: در مثال زیر، در رشته "abcdef
" از کاراکتر دوم یعنی "b" به طول 3 کاراکتر برگشت شده است:
SELECT x = SUBSTRING('abcdef', 2, 3);
نتیجه به شکل زیر خواهد بود:
برای مشاهده فیلم های آموزشی مقدماتی تا پیشرفته پایگاه داده SQLServerکلیک کنید.
READ MORE