SENTENCIAS DE CONTROL EN SQLSERVER
CASE
DECLARE @PAIS NVARCHAR(20)
SELECT @PAIS =
CASE 'PE'
 WHEN 'PE' THEN 'PERU'
 WHEN 'ME' THEN 'MEXICO'
 WHEN 'PI' THEN 'PISCO'
 ElSE 'No Existe Registro'
END
PRINT @PAIS
CASE 
 WHEN  THEN 
 WHEN  THEN 
 ELSE 
END
La sentencia case evalua varias condiciones y de acuerdo a cada case realiza una acción determinada
RETURN
DECLARE @CONTADOR INT
SET @CONTADOR = 10
WHILE (@CONTADOR >0)
 BEGIN
 PRINT '@CONTADOR = ' + CONVERT(NVARCHAR,@CONTADOR)
 SET @CONTADOR = @CONTADOR -1
 IF (@CONTADOR = 5)
 RETURN
 END
PRINT 'FIN'
Pone fin la instrucción que se ejecuta
GOTO
DECLARE @Contador int;
SET @Contador = 1;
WHILE @Contador < 10
BEGIN
SELECT @Contador
IF @Contador = 4 GOTO Opcion_Uno –Jumps to the first branch.
IF @Contador = 5 GOTO Opcion_Dos–This will never execute.
SET @Contador = @Contador + 1
END
Opcion_Uno:
SELECT ‘Eligio opción uno.’
GOTO Salida; –Esto evitará que las opciones se ejecuten una despues de la otra
Opcion_Dos:
SELECT ‘Eligio opción dos.’
GOTO Salida; –Esto evitará que las opciones se ejecuten una despues de la otra
Opcion_Tres:
SELECT ‘Eligio opción tres.’;
GOTO Salida; –Esto evitará que las opciones se ejecuten una despues de la otra
Salida:
SELECT ‘Adios’;
Define the label:   
label:   
Alter the execution:  
GOTO label
Etiqueta que nos permite marcar un segmento de consultas en la base de datos y nos permite ejecutarlo en cualquier parte de código
IF-ELSE
Begin Y End : es para colocar un segmento o bloque de codigo en el cuerpo del If O Else donde se crea conveniente
IF (SELECT COUNT(*) FROM Products WHERE UnitsInStock>=100)> 6
 BEGIN
 PRINT 'Existen Mas De 10 Productos Con Mas De 100 Unidades En Stock'
 SELECT ProductName,UnitsInStock
 FROM Products
 WHERE UnitsInStock > 100
 END
ELSE
 PRINT 'No Hay Productos Con Mas De 100 Unidades En StocK'
DECLARE @TotalProductos INT
SELECT @TotalProductos = COUNT(*) FROM Products
IF @TotalProductos > 100
 PRINT 'Existen Mas De 100 Productos'
ELSE
 PRINT 'Existen Menos De 100 Productos'
Recuerden La BD Que Se Utiliza Es Northwind
IF 
 
ELSE
 
Nos permite ejecutar instrucciones condicionales
WHILE
Ejemplo:
Declare @Contador int
set @Contador = 10
while (@Contador > 0)
 begin
 print '@Contador = ' + CONVERT(NVARCHAR,@Contador)
 set @Contador = @Contador -1
 end
Sintaxis
While 
 begin
 
 end
El bucle sirve para ejecutar un conjunto de instrucciones mientras la condición se cumpla