Post on 10-Apr-2015
CASO PRACTICO 3
CREATE TABLE PROYECTO(
IDPROYECTO CHAR(20) NOT NULL,
IDLINEA CHAR(20) NOT NULL,
NOMBREPROYECTO CHAR(100) NOT NULL,
F_INICIO DATE,
F_TERMINACION DATE,
PRESUPUESTO NUMBER(10) NOT NULL,
CONSTRAINT PK_PROYECTO PRIMARY KEY (IDPROYECTO),
CONSTRAINT FK_LINEA FOREIGN KEY (IDLINEA)
REFERENCES LINEA
);
CREATE TABLE DEPACADEMICO(
IDDEPARTAMENTO NUMBER(10) NOT NULL,
NOMBREDEPARTAMENTO CHAR(30) NOT NULL,
CONSTRAINT PK_DEPACADEMICO PRIMARY KEY (IDDEPARTAMENTO)
);
CREATE TABLE INVESTIGADOR(
IFE NUMBER(13) NOT NULL,
NOMBREINVESTIGADOR CHAR(50) NOT NULL,
IDDEPARTAMENTO NUMBER(10) NOT NULL,
TELEFONO CHAR(10) NOT NULL,
EMAIL CHAR(50) NOT NULL,
CONSTRAINT PK_INVESTIGADOR PRIMARY KEY (IFE),
CONSTRAINT FK_DEPACADEMICO FOREIGN KEY (IDDEPARTAMENTO)
REFERENCES DEPACADEMICO
);
CREATE TABLE ASIGNADO (
IDASIGNADO INTEGER NOT NULL,
IDPROYECTO CHAR(20) NOT NULL,
IFE NUMBER(13) NOT NULL,
TIPOPARTICIPACION VARCHAR2(20) NOT NULL,
F_INICIO DATE NOT NULL,
F_TERMINACION DATE NOT NULL,
CONSTRAINT "PK_ASIGNADO" PRIMARY KEY (IDASIGNADO),
CONSTRAINT "FK_INVESTIGADOR" FOREIGN KEY (IFE) REFERENCES "INVESTIGADOR",
CONSTRAINT "FK_PROYECTO" FOREIGN KEY (IDPROYECTO) REFERENCES "PROYECTO"
);
*INVESTIGADOR
INSERT INTO INVESTIGADOR VALUES(2214650803279,'ABELARDO RODRIGUEZ LEON',1001,2291521230,'ABE@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1398523080246,'ENRIQUE DEL MORAL PEREZ',1001,2291125458,'EMORAL@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1285109008749,'RAFAEL RIVERA LOPEZ',1001,2299189623,'RIVERA@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(3954122391398,'JULIO MORALES VILLANUEVA',1002,2292549358,'JVILLA@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(5879634568091,'ELSY MAGALLANES GARCIA',1002,2299326120,'ELSY@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(3254189074252,'ROGELIO PARAMO PEREZ',1002,2291598870,'ROGELIO@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1128567903429,'ANTONIO REYES MARTINEZ',1003,2292138450,'REYESM@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1895623031707,'JORGE DE LEON MARTINEZ',1003,2291932753,'LEON@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(9327566810743,'JUAN PEREZ GARCIA',1003,2292128552,'JPEREZ@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(3984921817543,'KARLA ZARAZA VARGAS',1004,2291985220,'KALY@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1736498724507,'FIDEL CASTRO GARCIA',1004,2299872345,'FCASTRO@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(0883764520912,'NICOLAS ALVAREZ NAVARRETE',1004,2299837652,'NAVA@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(7663892735450,'ZAIRA GRANADOS GARCIA',1004,2291287345,'ZAIRA@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1234567809874,'MARIBEL HUERTA SALAS',1004,2291287645,'HUERTA@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(1877463028563,'NOEMI GOMEZ CRUZ',1005,2299826734,'GOMEZ@HOMAIL.COM');
INSERT INTO INVESTIGADOR VALUES(7638928375475,'RAFAEL RIVERA LOPEZ',1005,2291521230,'ABE@HOMAIL.COM');
*DEPARTAMENTOINSERT INTO DEPACADEMICO VALUES(1001,'SISTEMAS');INSERT INTO DEPACADEMICO VALUES(1002,'PROGRAMACION');INSERT INTO DEPACADEMICO VALUES(1003,'ADMINISTRACION');INSERT INTO DEPACADEMICO VALUES(1004,'BASE DE DATOS');INSERT INTO DEPACADEMICO VALUES(1005,'ALGORITMO');
*LINEASINSERT INTO LINEA VALUES(1,'DESARROLLO DE TECNOLOGIA DE INFORMACION','MONTE DE PIEDAD');
INSERT INTO LINEA VALUES(2,'COMPUTO DISTRIBUIDO','BANAMEX');
INSERT INTO LINEA VALUES(3,'ELECTRONICA DE POTENCIA','SANTANDER');
INSERT INTO LINEA VALUES(4,'ROBOTICA','CONACYT');
*PROYECTO
INSERT INTO PROYECTO VALUES(1,1,'MULTIPROCESAMIENTO','05/06/2010','10/06/2010','111991');
INSERT INTO PROYECTO VALUES(2,2,'ALGORITMOS','05/06/2010','10/06/2010','333333');
INSERT INTO PROYECTO VALUES(3,3,'INGENIERIA DE SOFTWARE WEB','05/06/2010','10/06/2010','423355');
INSERT INTO PROYECTO VALUES(5,1,'METODOLOGIAS DE DE INGENIERIA DE SOFTWARE ORIENTADA A OBJETOS','05/06/2010','10/06/2010','145691');
INSERT INTO PROYECTO VALUES(6,2,'MECATRONICA','05/06/2010','10/06/2010','776767');
INSERT INTO PROYECTO VALUES(7,3,'WEB 2.0','05/06/2010','10/06/2010',989989');
*ASIGNADO
INSERT INTO ASIGNADO VALUES(1,1,'1398523080246','LIDER','05/06/2010','06/05/2010');
INSERT INTO ASIGNADO VALUES(2,2,'2214650803279','LIDER','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(3,3,'1285109008749','COLABORADOR','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(4,5,'3954122391398','COLABORADOR','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(5,6,'5879634568091','BECARIO','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(6,7,'3254189074252','BECARIO','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(7,1,'1128567903429','COLABORADOR','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(8,2,'1895623031707','COLABORADOR','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(9,2,'9327566810743','BECARIO','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(10,3,'3984921817543','BECARIO','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(11,5,'1736498724507','LIDER','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(12,5,'0883764520912','BECARIO','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(13,6,'7663892735450','LIDER','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(14,6,'1234567809874','COLABORADOR','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(15,7,'1877463028563','LIDER','05/06/2010','06/05/2011');
INSERT INTO ASIGNADO VALUES(16,7,'7638928375475','BECARIO','05/06/2010','06/05/2011');
*CONSULTAS
SELECT I.NOMBREINVESTIGADOR AS NINVESTIGADOR, P.NOMBREPROYECTO AS "NOMBRE PROYECTO", D.NOMBREDEPARTAMENTO AS DEPARTAMENTOFROM PROYECTO P, ASIGNADO A, INVESTIGADOR I, DEPACADEMICO DWHERE D.NOMBREDEPARTAMENTO = 'SISTEMAS'AND D.IDDEPARTAMENTO = I.IDDEPARTAMENTO AND I.IFE = A.IFE ANDA.IDPROYECTO = P.IDPROYECTO ORDER BY NINVESTIGADOR;
SELECT D.NOMBREDEPARTAMENTO, I.NOMBREINVESTIGADOR, P.NOMBREPROYECTO, TO_CHAR (P.F_INICIO, 'YYYY/MM/DD') AS FECHAFROM PROYECTO P, ASIGNADO A, DEPACADEMICO D, INVESTIGADOR IWHERE A.TIPOPARTICIPACION ='LIDER'AND P.F_TERMINACION IS NULL AND D.IDDEPARTAMENTO = I.IDDEPARTAMENTOAND I.IFE = A.IFE AND A.IDPROYECTO = P.IDPROYECTO;
SELECT D.NOMBREDEDEPARTAMENTO, I.NOMBREINVESTIGADOR, P.NOMBREPROYECTO, P.F_INICIO, P.F_TERMINACIONFROM PROYECTO P, ASIGNADO A, DEPACADEMICO D, INVESTIGADOR IWHERE I.NOMBREINVESTIGADOR = 'ABELLARDO RODRIGUEZ LEON'AND D.IDDEPARTAMENTO = I.IDDEPARTAMENTO AND I.IFE = A.IFE AND A.IDPROYECTO = P.PROYECTO;
SELECT I.NOMBREINVESTIGADOR, I.TELEFONO, P.NOMBREPROYECTO
FROM ASIGNADO A, PROYECTO P, INVESTIGADOR IWHERE P.PRESUPUESTO = 0AND A.TIPOPARTICIPACION='LIDER'AND I.IFE=A.IFE AND A.IDPROYECTO = P.IDPROYECTO;
SELECT NOMBREPROYECTO "NOMBRE PROYECTO", TO_CHAR(F_INICIO,'YYYY/MM/DD') "FECHA INICIO"FROM PROYECTOWHERE TO_CHAR(F_INICIO,'YYYY')= TO_CHAR(SYSDATE,'YYYY');
SELECT I.NOMBREINVESTIGADOR, P.NOMBREPROYECTOFROM ASIGNADO A, PROYECTO P, INVESTIGADOR I, LINEA LWHERE P.PRESUPUESTO > 0AND L.FINANCIADOPOR = 'CONACYT'AND L.IDLINEA = P.IDLINEAAND A.TIPOPARTICIPACION = 'LIDER'AND I.IFE = A.IFEAND A.IDPROYECTO = P.IDPROYECTO;
SELECT L.NOMBRELINEA,TO_CHAR (P.SPRESUPUESTO, '999,999,999') PRESUPUESTOFROM LINEA L, (SELECT IDLINEA, SUM (PRESUPUESTO) SPRESUPUESTO FROM PROYECTO GROUP BY IDLINEA) PWHERE (P.SPRESUPUESTO > 100000) AND (L.IDLINEA = P.IDLINEA)ORDER BY PRESUPUESTO;
SELECT I.NOMBREINVESTIGADOR, P.NOMBREPROYECTO "NOMBRE PROYECTO", P.F_INICIO, P.F_TERMINACION "CULMINO"FROM INVESTIGADOR I, (SELECT I.IFE, P.NOMBREPROYECTO. P.F_INICIO, P.F_TERMINACION
FROM PROYECTO P, ASIGNADO A, INVESTIGADOR IWHERE NOT (P.F_TERMINACION IS NULL)AND NOT (A.TIPOPARTICIPACION = 'BECARIO')AND P.IDPROYECTO = A.IDPROYECTOAND I.IFE = A.IFE) PWHERE I.IFE = P.IFE;
SELECT NOMBREPROYECTO "NOMBRE PROYECTO", F_INICIO "FECHA INICIO", F_TERMINACION "CULMINO"FROM PROYECTOWHERE NOT (F_TERMINACION IS NULL);
SELECT NOMBREPROYECTO "NOMBRE PROYECTO", F_INICIO "FECHA INICIO", F_TERMINACION "CULMINO"FROM PROYECTOWHERE F_TERMINACION IS NULL;
SELECT NOMBREPROYECTO "NOMBRE PROYECTO",TO_CHAR(PRESUPUESTO,'9,999,999') PRESUPUESTO FROM PROYECTOWHERE PRESUPUESTO >= (SELECT AVG (PRESUPUESTO)FROM PROYECTO WHERE PRESUPUESTO > 0);
SELECT NOMBREINVESIGADOR "NOMBRE INVESTIGADOR"FROM INVESTIGADOR IWHERE (I.IFE NOT IN (SELECT DISTINCT (A.IFE) FROM PROYECTO P, ASIGNADO A, INVESTIGADOR I WHERE PRESUPUESTO = 0 AND A.IDPROYECTO = P.IDPROYECTO
AND I.IFE = A.IFE))AND (I.IFE IN (SELECT DISTINCT (A.IFE) FROM PROYECTO P, ASIGNADO A, INVESTIGADOR I WHERE A.IDPROYECTO = P.IDPROYECTO AND I.IFE = A.IFE))ORDER BY NOMBREINVESIGADOR;