PDA

View Full Version : پروسیجر با تعداد پارامترهای پویا



xsbehx
یک شنبه 24 خرداد 1394, 10:52 صبح
سلام
من یک جدولی دارم که گاهی لازمه توش جست و جویی از طریق in انجام بدم.
مثلا می خوام بگم که اگر کاربری که تو جدول مورد نظر هست اگر ایدیش IN(1,2,5,20) بود رو برام بیار.
حالا من اگر بخوام به روش معمولی پروسیجر بزنم نمی تونیم اینکارو بکنم. چون نمی دونم که پارامترهای ورودی من چنتاست.
چطور می شه کاری کارد که تعداد پارامترهای ورودی من دینامیک باشه و اگر کاربر 1 تا n تا پارامتر هم ارسال کرد مشکلی پیش نیاد

rezayeman
دوشنبه 25 خرداد 1394, 12:35 عصر
اون مقداری که واسه in میزاریو از طریق یک متغیر براش ارسال کن

مثلا به جای
1,2,5,20 یک متغیر واسش بزار به اسم Value@ و بعد از تو برنامه بهش مقدار بده

(IN(@Value

declare @Sql nvarchar(max)
set @Sql = 'select * from tbl where column in (' + @Value + ')'
exec sp_executesql @Sql