怎么编辑存储过程的if,else?

2024-12-16 23:17:10
推荐回答(1个)
回答1:

Oracle 是下面这种写法:

IF testvalue > 100 THEN
dbms_output.put_line( '100+' );
ELSIF testvalue = 100 THEN
dbms_output.put_line( '100' );
ELSE
dbms_output.put_line( '100-' );
END IF;

DB2, MYSQL 是下面这种写法: ( 与 Oracle 区别在于那个 ELSIF )

IF p_val > 100 THEN
INSERT INTO output_debug VALUES( '100+' );
ELSEIF p_val = 100 THEN
INSERT INTO output_debug VALUES( '100' );
ELSE
INSERT INTO output_debug VALUES( '100-' );
END IF;

SQL Server 有些差别:

IF @testvalue > 100
BEGIN
PRINT( '100+' );
END
ELSE IF @testvalue = 100
BEGIN
PRINT( '100' );
END
ELSE
BEGIN
PRINT( '100-' );
END