PDA

View Full Version : استفاده از متغییر varchar در sp



programer1389
چهارشنبه 12 مهر 1391, 10:38 صبح
این کد منه


USE mydb
GO
DECLARE @st VARCHAR(50)
SET @st=' id>10000'
SELECT*FROM table1 WHERE @str

که این خطا رو میده


An expression of non-boolean type specified in a context where a condition is expected, near '@st'

این کد رو چجوری اصلاح کنم که اگه کدم شد


SET @st=' id>10000 AND id2>20000'
هم درست کار کنه
البته این رو میدونم که میشه کد رو اینجوری نوشت


USE mydb
GO
DECLARE @st VARCHAR(50)
SET @st='10000'
SELECT*FROM table1 WHERE id> @str

مشکل من اینه که یک sp دارم که یک متغییر بهش پاس میدم اگه 1 بود میخواهم شرط where به یک صورت باشه اگه 2 بود به یک شکل دیگه where انجام بشه و اگه 3 بود با شرط سوم انجام بشه