ورود

View Full Version : سوال: اجرای دستورات SQL در Table Function



Shahram_Amiri
شنبه 29 آبان 1389, 08:39 صبح
همانطور که می دانیم امکان اجرای دستورات Sql با استفاده از Execute در Table Function وجود ندارد، آیا راه دیگری برای اجرای دستورات بصورت String در Table Function وجود دارد؟

Reza_Yarahmadi
شنبه 29 آبان 1389, 12:41 عصر
يك راه (و فكر كنم تنها راه) اينه كه در صورت امكان كل دستور رو بصورت Dynamic Query بنويسيد
مثال فرض كنيد شما قصد داريد دستوري بصورت زير بنويسيد
Select
*
From
tbl1
inner join
(Exec 'Select
*
From
tbl2
Where
Id IN (' + @ID + ')'
) as tbl2
on
tbl1.Code = tbl2.Code
ميتونيد دستور بالا رو بصورت زير بنويسيد
EXEC ('Select
*
From
tbl1
inner join
(Select
*
From
tbl2
Where
Id IN (' + @ID + ')
) as tbl2
on
tbl1.Code = tbl2.Code)'
)