alter Procedure sp_range_chkbox
@Price int,
@Price1 int,
@chkValue varchar(max)
as
begin
IF (@chkValue > 0)
begin
select
ProductID, ProductName, ProductImage, ProductPrice
from
tblProddetails
where
(ProductPrice between @Price and @Price1)
and (CHARINDEX(',' + CAST(Categoryid as VARCHAR(8000)) + ',', ',' + @chkvalue + ',') > 0)
end
else
begin
select
ProductID, ProductName, ProductImage, ProductPrice
from
tblProddetails
where
ProductPrice between @Price and @Price1
end
end
Здесь я использую @chkvalue
, как Varchar(max)
Как добавить несколько значений в SQL с помощью оператора запятая
Но код выдает ошибку:
Conversion failed when converting the varchar value '3,1' to data type int
Я думаю, что вы хотите, чтобы проверить, если 'LEN (@chkValue)> 0' –
@WEI_DBA (LEN (@chkValue)> 0) hbow использовать это в If Condution –
В инструкции If замените '@ chkValue' на' LEN (@chkValue) ' –