一佳一

记录像1+1一样简洁的代码

导航

sql 存储过程 in 的两种写法

Posted on 2014-11-04 15:23  一佳一  阅读(6511)  评论(0编辑  收藏  举报

最近又忘记存储过程 除了exec 动态写法的另外一种,这里记录一下,方便查找

写法1,动态语句

 

CREATE PROCEDURE sp_CountShiftWish 
    @strids varchar (1024)   /*strids   是id列表,   类似1,2,3*/ 
AS 
   exec ('select * from student where id in('+@strids+')')
 
go

 

写法2,索引查找

CREATE   PROCEDURE   sp_CountShiftWish 
   @strids   varchar   (1024)   /*strids   是id列表,   类似1,2,3*/ 
AS 
    select   *   from   student   where  charindex(','+ltrim(id)+',',','+@strids+',')>0 
go