SQLServer 存储过程传递数组参数

问题描述

Create PROCEDURE  [dbo].[Ly_Kc_GetKcInfoById] 
    @strKcId varchar(500)--需传递进来的值为‘1,2,3,4,5’

select * from Table where Id in (@strKcId ) 

说明Id为Int型

将参数‘1,2,3,4,5’传递进来,执行存储过程会报错.

解决办法:

select   *   from Table   where CHARINDEX(','+cast(Id as varchar(20))+','  ,  ','+@strKcId+',')>0

你可能感兴趣的:(技术沉淀,sqlserver,java,数据库)