SQLServer存储过程中int字段含有in条件的解决办法

类似于这种的Sql语句:
Select * from table where column in (1,2,3)
column为int类型,在普通的Sql语句中我们可以传递一个字符串,但是在存储过程中却行不通,存储过程会自动进行格式化。

解决的办法:

ALTER PROCEDURE [dbo].[GetList]
@MyConditions varchar(20)
AS
SELECT
FROM
	[dbo].[Table] 
WHERE CHARINDEX(','+cast([Table].[COLUMN] as varchar(10))+',',','+@MyConditions +',')>0   

OK!这是一种比较简单的解决办法。

posted @ 2021-12-09 12:05  vba是最好的语言  阅读(403)  评论(0)    收藏  举报