CREATE PROCEDURE uspRetornaIdade
(
@CodigoCliente int
)
AS
SELECT Clientes.ClienteNome, YEAR(GETDATE())-YEAR(ClienteNascimento) AS IDADE
FROM Clientes
INNER JOIN Contas ON Clientes.ClienteCodigo=Contas.ClienteCodigo
WHERE Clientes.ClienteCodigo = @CodigoCliente;
declare @parametro int
set @parametro = 1 --Código do Cliente desejado
exec uspRetornaIdade @parametro;
CREATE PROCEDURE uspRetornaSeTemCartao
(
@CodigoCliente int
)
AS
BEGIN
DECLARE @CodigoClienteCartao INT
SET @CodigoClienteCartao = (SELECT CartaoCredito.ClienteCodigo FROM Clientes LEFT JOIN CartaoCredito
ON CartaoCredito.ClienteCodigo = Clientes.ClienteCodigo WHERE CartaoCredito.ClienteCodigo = @CodigoCliente)
IF @CodigoClienteCartao IS NULL
BEGIN
SELECT * FROM CartaoCredito WHERE ClienteCodigo = @CodigoCliente;
END
ELSE
BEGIN
SELECT 'LIGAR', * FROM Clientes WHERE ClienteCodigo = @CodigoCliente
END
END;
EXEC uspRetornaSeTemCartao @CodigoCliente = 25; -- TEM CARTÃO
EXEC uspRetornaSeTemCartao @CodigoCliente = 1; --NÃO TEM CARTÃO
DECLARE @contador INT
SET @contador = 1
WHILE @contador <= 5
BEGIN
SELECT @contador
SET @contador = @contador + 1
END