Académique Documents
Professionnel Documents
Culture Documents
PARTE 1 : Consultas
------------------------------------------------------------------
-------
CREATE DATABASEBANCO
GO
USEBANCO
GO
CREATE TABLECLIENTE
(IDCLIENTEVARCHAR(5)PRIMARY KEY,
APELLIDOSVARCHAR(30),
NOMBRESVARCHAR(30))
GO
CREATE TABLECUENTA
(IDCLIENTEVARCHAR(5),
IDCUENTAVARCHAR(5)PRIMARY KEY,
SALDOFLOAT,
DIVISAVARCHAR(20))
GO
CREATE TABLEMOVIMIENTO
(IDCUENTAVARCHAR(5),
IDMOVIMIENTOVARCHAR(5)PRIMARY KEY,
TIPOVARCHAR(2),
MONTOFLOAT,
FECHADATETIME)
GO
ALTER TABLECUENTA
GO
ALTER TABLEMOVIMIENTO
GO
SELECTB.APELLIDOS+','+B.NOMBRESASCLIENTE,A.IDCUENTA,A.SALDO
ONA.IDCLIENTE=B.IDCLIENTE
WHEREB.APELLIDOSLIKE'A%'
--1B
SELECTA.IDCUENTA,C.FECHA,C.MONTO,TIPO=CASEC.TIPOWHEN'D'THEN'DEPOSI
TO'WHEN'R'THEN'RETIRO'WHEN'T'THEN'TRANSFERENCIA'END
WHEREA.DIVISA='EUROS'ANDB.APELLIDOS='PEREZ'
ORDER BYC.FECHADESC
--1C
ONC.IDCLIENTE=CU.IDCLIENTE
INNER JOINMOVIMIENTO M
ONCU.IDCUENTA=M.IDCUENTA
WHEREC.APELLIDOS='PEREZ'
ORDER BYCU.IDCUENTA
--1D
SELECTB.IDCLIENTE,B.APELLIDOS,B.NOMBRES,A.IDCUENTA,A.DIVISA
WHEREA.DIVISA='SIN CUENTA'
--1E
SELECTA.IDCUENTA,C.FECHA,C.MONTO,C.TIPO
WHEREC.TIPO='DEPOSITO'ANDB.APELLIDOS='PEREZ'OR
C.TIPO='TRANSACCIONES'ANDB.APELLIDOS='RODRIGUEZ'
ORDER BYC.FECHADESC
--1F
CREATE FUNCTIONMOROSO(@FECHAPAGODATETIME)
RETURNS VARCHAR(20)
AS
BEGIN
DECLARE@FECHACLIENTEDATETIME
DECLARE@MENSAJEVARCHAR(20)
SELECT@FECHACLIENTE=FECHAFROMMOVIMIENTOWHERETIPO='DEPOSITO'
IFMONTH(@FECHACLIENTE) <MONTH(@FECHAPAGO)
RETURN@MENSAJE
END
--DEMO
SELECTdbo.MOROSO('15/02/2011')