ارسال آرایه به Function در SQL Server
در اینجا منظور از آرایه یک رشته از پارامترها است که با کاما از یکدیگر جدا شده اند (بطور مثال '1,2,3,4,5') که به عنوان ورودی به یک فانکشن ارسال می کنیم و از آن درون فانکشن استفاده می کنیم:
Create FUNCTION Function_ArrayInput(@Codes as nvarchar(max))
RETURNS TABLE
AS
RETURN
SELECT ID, Code, Name
FROM Test
WHERE (CHARINDEX(CAST(Code AS nvarchar(20)), @Codes) > 0)
---Use:
select * from Function_ArrayInput('A,B,C')
در مثال فوق یک رشته از کد ها را به فانکشن فرستاده ایم و شرطی که در فانکشن قرار دارد درست مانند کد زیر عمل می کند:
WHERE Code in ('A','B','C')