SQL 的一个函数问题
本帖最后由 wangbiao_97 于 2012-12-10 17:53:00 编辑
函数里面用了很多个IF 语句
IF A=123
BEGIN
SET XX=1
END
IF A=456
BEGIN
SET XX=1
END
.....
最后一句
Return XX
我想如果第一个IF 成立的话,就直接return XX ,这样可以减少IF 执行次数,这样可以吗
IF A=123
BEGIN
SET XX=1
Return XX
END
------解决方案--------------------不行,函数末句必须return 。
可以用 if else 实现 ,
或者
declare @i int
set @i= case when 1=2 then 1 when 2=2 then 2 else 3 end
return @i
这样子。
------解决方案--------------------用 if else 可以实现
例如:
IF A=123
BEGIN
SET XX=1
END
ELSE IF A=456
BEGIN
SET XX=1
END
.....
最后一句
Return XX