你把整个的insert 语句 都放到一个字符串中去不久可以了

解决方案 »

  1.   

    declare @smsid VARCHAR(250)
    set @smsid='55334, 55331, 55328, 55327, 55051, 55050 '
    exec('insert into sms_mc(Smsid,SmsSubTypeID,SmsTypeID,Title,UserID,Type_flag,mcid,mc_orders) select smsid,SmsSubTypeID,SmsTypeID,Title,UserID,Type_flag,@mcid,@mc_orders from sms where smsid in ('+@smsid+')' )
      

  2.   

    OR:
    declare @smsid VARCHAR(250)
    set @smsid='55334, 55331, 55328, 55327, 55051, 55050 'insert into sms_mc(Smsid,SmsSubTypeID,SmsTypeID,Title,UserID,Type_flag,mcid,mc_orders) select smsid,SmsSubTypeID,SmsTypeID,Title,UserID,Type_flag,@mcid,@mc_orders from sms where charindex(','+smsid+',',','+@smsid+',')>0
      

  3.   

    若smsid 为INT型:
    where charindex(','+rtrim(smsid)+',',','+@smsid+',')>0