在SQL Server 2005中使用IF EXISTS时出错

时间:2014-10-06 09:26:48

标签: sql-server-2005

这是我的查询,但收到错误。请帮忙怎么做

declare @spid varchar(20)

if exists ((select @spid = Sponsor_Id  from UserTransaction)  where User_id= 'RL0814')
   insert into UserTransaction(Sponsor_Id, User_Id) 
   values (@spid,'RL4108')

错误是:

  

' ='

附近的语法不正确

1 个答案:

答案 0 :(得分:1)

请改为尝试:

DECLARE @spid VARCHAR(20)
SET @spid = NULL

SELECT @spid = Sponsor_Id 
FROM dbo.UserTransaction 
WHERE User_id = 'RL0814'

IF @spid IS NOT NULL
   INSERT INTO dbo.UserTransaction(Sponsor_Id, User_Id) 
   VALUES (@spid, 'RL4108')