这样肯定不行的.一个select语句是要返回结果集的,不能在in中用来付值,select BargainCode,@timespace=inuretimespace
from tabBargainWake
where usercode=@usercode and  RunInureWake='1' 
      这局是给@timespace付值.--可以这样
CREATE PROCEDURE begainback2
@usercode varchar(10),
@out varchar(8000) output
AS
declare @timespace integer
select distinct bargaincode
into #tb
from tabbargain
where state='等待履行' and datediff(day,startdate,getdate())>(select inuretimespace
from tabBargainWake where usercode=@usercode and  RunInureWake='1' and bargaincode=tabBargainWak.brgaincode)
and BargainCode in(select BargainCode from tabBargainWake where usercode=@usercode and  RunInureWake='1')