类似于这种的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!这是一种比较简单的解决办法。
关键字: in条件 SQLServer存储过程
发表评论
相关文章
国内AI资源汇总,AI聊天、AI绘画、AI写作、AI视频、AI设计、AI编程、AI音乐等,国内顺畅访问,无需科学上网。
扫码或点击进入:萤火AI大全
文章分类
最新评论