
tp3 sql
By: a guest on
Jun 14th, 2012 | syntax:
SQL | size: 1.75 KB | hits: 25 | expires: Never
CREATE PROCEDURE SP_ClasificarSaldo
@NROCUENTA INT = NULL
AS
BEGIN
DECLARE @SALDO INT
IF @NROCUENTA IS NULL
BEGIN
RAISERROR('DEBES INDICAR UN NUMERO DE CUENTA.',10,1)
RETURN
END
SET @SALDO = (SELECT SALDO FROM CUENTAS WHERE NRCUENTA = @NROCUENTA)
IF @SALDO IS NULL
BEGIN
RAISERROR('LA CUENTA INGRESADA NO EXISTE.',10,1)
RETURN
END
SELECT
CASE
WHEN @SALDO < 10000 THEN 'SALDO BAJO.'
WHEN @SALDO > 10000 AND @SALDO < 50000 THEN 'SALDO MEDIO'
WHEN @SALDO > 50000 THEN 'SALDO ALTO'
END
END
/********************5- LOCALIDAD DE LA CUENTA X *********************************************/
CREATE PROCEDURE SP_G5_LOCALIDAD_CUENTA_X
@NRCUENTA INT
AS
IF NOT EXISTS(SELECT NRCUENTA FROM CUENTAS WHERE NRCUENTA=@NRCUENTA)
BEGIN
RAISERROR 5000 'LA CUENTA INDICADA ES INEXISTENTE'
RETURN 1
END
SELECT NRCUENTA, CIUDADES.CIUDAD, PROVINCIAS.PROVINCIA
FROM CUENTAS
INNER JOIN SUCURSALES
ON NRSUC=NRSUC.SUCURSALES RIGHT JOIN CIUDADES
ON CODCIUDAD.SUCURSALES=CODCIUDAD.CIUDADES LEFT JOIN PROVINCIAS
ON CODPROV.CIUDADES=CODPROV.PROVINCIAS
WHERE NRCUENTA=@NRCUENTA
/***********7- ULTIMOS N MOVIMIENTOS DE UNA CUENTA X AGRUPADOS EN TIPO DE OPERACION ***********/
CREATE VIEW ULTMOVS
@NMOV INT
@NRCUENTA INT
AS
IF NOT EXISTS(SELECT NRCUENTA FROM CUENTAS WHERE NRCUENTA=@NRCUENTA)
BEGIN
RAISERROR 5000 'LA CUENTA INDICADA ES INEXISTENTE'
RETURN 1
END
IF @NMOV<1
BEGIN
RAISERROR 5000 'DEBE INDICAR LOS N ULTIMOS MOVIMIENTOS CON UN VALOR ENTERO MAYOR A 0'
RETURN 1
END
/* VEAMOS SI ANDA.. */
SELECT TOP(@NMOV) FECHA, NRMOV, MONTO, TIPOSOPERACIONES.TIPO FROM MOVIMIENTOS LEFT JOIN TIPOSOPERACIONES ON TIPOOP=TIPOSOPERACIONES.TIPOOP GROUP BY TIPOSOPERACIONES.TIPO WHERE NRCUENTA=@NRCUENTA