IF variable ='something'INSERT IF variable ='somethingelse'INSERT

时间:2013-06-28 15:25:23

标签: sql-server-2005 if-statement sql-insert

我有一个输入变量,根据用户选择的内容设置,然后根据此变量的设置,数据将“不同”。

选项为“数字”或“日期”。

因此,如果用户输入“数字”,则将按数字获取数据,如果他们选择“日期”,他们将按日期获取数据。

程序中有很多事情发生,但我遇到麻烦的是结束。根据变量的设置,我必须插入#ResultsTable

所以我需要帮助我的IF声明,我所拥有的是......

IF @Input = 'Number'
BEGIN
   Insert records into #ResultsTable
END
ELSE 
IF @Input = 'Date'
   Insert records into #ResultsTable
END
SELECT * FROM #ResultsTable

所以我得到的错误是当我运行@Input变量为'Date'的存储过程时,它说

  

无效的对象名称'#ResultsTable'。

@Input变量为'Number'时,它可以正常工作。

1 个答案:

答案 0 :(得分:0)

查询不应该是:

IF @Input = 'Number' 
  BEGIN Insert records into #ResultsTable 
END 
ELSE IF @Input = 'Date' 
  BEGIN Insert records into #ResultsTable 
END 
SELECT * FROM #ResultsTable

我想你在@Input = 'Date'

之后忘记了'开始'