Usar IF...ELSE
La instrucción IF se usa para probar una condición. El flujo de control resultante depende de si se especifica o no la instrucción ELSE opcional:
IF especificado sin ELSE
Cuando la instrucción IF se evalúa como TRUE (verdadero), se ejecuta la instrucción o bloque de instrucciones que sigue a la instrucción IF. Cuando la instrucción IF se evalúa como FALSE (falso), se salta la instrucción o bloque de instrucciones que sigue a la instrucción IF.
IF especificado con ELSE
Cuando la instrucción IF se evalúa como TRUE, se ejecuta la instrucción o bloque de instrucciones que sigue a la instrucción IF. A continuación, el control salta al punto posterior a la instrucción o bloque de instrucciones que sigue a ELSE. Cuando la instrucción IF se evalúa como FALSE, se salta la instrucción o bloque de instrucciones que sigue a IF y se ejecuta la instrucción o bloque de instrucciones que sigue a la instrucción ELSE opcional.
Por ejemplo, si un procedimiento almacenado ha estado guardando los códigos de error devueltos por @@ERROR durante una transacción, podría tener una instrucción IF similar a la siguiente al final del procedimiento:
IF (@ErrorSaveVariable <> 0)
BEGIN
PRINT 'Errors encountered, rolling back.'
PRINT 'Last error encountered: ' +
CAST(@ErrorSaveVariable AS VARCHAR(10))
ROLLBACK
END
ELSE
BEGIN
PRINT 'No Errors encountered, committing.'
COMMIT
END
RETURN @ErrorSaveVariable
Para obtener más ejemplos, vea ELSE (IF...ELSE) (Transact-SQL).