تابع STUFF:
این تابع، یک رشته را داخل رشته دیگر درج می کند و در رشته اول از موقعیت start به طول مشخص شده ای (length) کاراکترها را حذف می کند.
رشته دوم در موقعیت start درج می شود.
نحوه استفاده:
پارامترها:
پارامتر | توضیح |
---|---|
character_expression | یک عبارت رشته ای است و می تواند یک متغیر، ثابت و یا ستونی از داده های رشته ای یا باینری باشد. |
start | یک مقدار عددی است که محل شروع حذف شدن و درج شدن رشته دوم را مشخص می کند. اگر start منفی باشد و یا بزرگتر از طول رشته اول باشد، NULL برگشت می شود. start می تواند از نوع bigint باشد. |
length | یک مقدار عددی است که تعداد کاراکترهایی که باید از رشته اول حذف شود را مشخص می کند. اگر length منفی باشد مقدار NULL برگشت می شود و اگر بزرگتر از طول رشته اول باشد عمل حذف شدن انجام خواهد شد. length می تواند از نوع bigint باشد. |
نوع داده خروجی(Return Type):
اگر character_expression از داده های رشته ای است، نوع داده خروجی نیز رشته ای خواهد بود و اگر character_expression از داده های باینری باشد، نوع داده خروجی نیز باینری است.
مثال1: در مثال زیر، در رشته "abcdef" از موقعیت 2 به طول 3 کاراکتر حذف می شود و بجای آن رشته "ijklmn" درج می شود:
GO
نتیجه به شکل زیر خواهد بود:
result |
---|
aijklmnef |
برای مشاهده فیلم های آموزشی مقدماتی تا پیشرفته پایگاه داده SQLServer کلیک کنید.
FROM Researcher inner join
ResearcherInvention ON ResearcherInvention.Researcher_code = Researcher.Code join
Invention ON ResearcherInvention.Invention_code = Invention.code
where ResearcherInvention.Invention_code in (select Invention_code from ResearcherInvention where Researcher_code=49000204)
...
www.mssqltips.com/sqlservertip/2914/rolling-up-multiple-rows-into-a-single-row-and-column-for-sql-server-data/