存储过程嵌套IF语句写法
declare @str varchar(20)
set @str = 'A0'
create table #Test(ph varchar(20),mq varchar(20))
insert into #Test (ph , mq)
/*执行时提示 IF 附件有语法错误*/
if ISNUMERIC(@str) = 1
begin
select ph , mq from aa
end
else
begin
select ph , mq from bbb
end
[解决办法]
- SQL code
declare @str varchar(20) set @str = 'A0'create table #Test(ph varchar(20),mq varchar(20))insert into #Test (ph , mq) select ph , mq from aa where ISNUMERIC(@str) = 1 union all select ph , mq from bbb where ISNUMERIC(@str) <> 1
[解决办法]
- SQL code
declare @str varchar(20)set @str = 'A0'create table #Test(ph varchar(20),mq varchar(20)) /*执行时提示 IF 附件有语法错误*/if ISNUMERIC(@str) = 1begin insert into #Test (ph , mq) select ph , mq from aaendelsebegin insert into #Test (ph , mq) select ph , mq from bbbend
[解决办法]
IF语法没问题哇.
是其他出错吧.
[解决办法]
- SQL code
insert into #Test (ph , mq)
[解决办法]
[解决办法]
insert into ... select ... 这个中间不能用if
如果用if的话,就是
if
insert into ... select ...
if
insert into ... select ...
不能
insert into ...
if
select ...