Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 使用 SQL » SQL 语句 » SQL 语句 (E-O)

 

IF 语句 [T-SQL]

此语句用于控制 SQL 语句的条件执行,是 Watcom-SQL IF 语句的替代方法。

语法
 IF expression statement
[ ELSE [ IF expression ] statement ]
注释

Transact-SQL IF 条件和 ELSE 条件各控制一个 SQL 语句或复合语句(在关键字 BEGIN 和 END 之间)的执行。

与 Watcom-SQL IF 语句相比,Transact-SQL IF 语句中没有 THEN。Transact-SQL 版本也没有 ELSEIF 或 END IF 关键字。

权限

无。

副作用

无。

标准和兼容性
  • SQL/2003   Transact-SQL 扩充。

示例

下面的示例阐释了 Transact-SQL IF 语句的用法:

IF (SELECT max(ID) FROM sysobjects) < 100
   RETURN
ELSE
         BEGIN
      PRINT 'These are the user-created objects'
      SELECT name, type, ID
      FROM sysobjects
      WHERE ID < 100
   END

以下两个语句块说明了 Transact-SQL 和 Watcom-SQL 的兼容性:

/* Transact-SQL IF statement */
IF @v1 = 0
   PRINT '0'
ELSE IF @v1 = 1
   PRINT '1'
ELSE
   PRINT 'other'
/* Watcom-SQL IF statement */
IF v1 = 0 THEN
   PRINT '0'
ELSEIF v1 = 1 THEN
   PRINT '1'
ELSE
   PRINT 'other'
END IF