TALLER PRACTICO CAPITULO 4 SQL PROFESOR EDGAR SANDOVAL A OBJETIVO: Manejo de consultas SQL, ampliación y práctica de los joins y reunión natural entre tablas, así mismo manejo de subconsultas y la creación de vistas. REQUERIMIENTO Ejercicio aplicando conexión remota y local a través de TNS, y con la aplicación sqltools. MANEJO DE SUBCONSULTAS Una subconsultas es una sentencia SELECT que aparece dentro de otra sentencia SELECT. Normalmente se utilizan para filtrar una clausula WHERE o HAVING con el conjunto de resultados de la subconsultas, aunque también pueden utilizarse en la lista de selección. Ejemplo. /*MOSTRAR TODOS LOS DOCENTES QUE TIENEN SALARIO IGUAL AL PROFESOR EDGAR SANDOVAL A*/ SELECT salario,nombre,apellido FROM docente WHERE salario = (SELECT salario FROM docente where nombre LIKE 'EDGAR%') /*MOSTRAR LAS ASIGNATURAS QUE SUS HORAS DE TRABAJO INDEPENDIENTE SEAN IGAUL A LA DE MATEMATICAS I*/ SELECT nomasignatura,hti FROM asignatura WHERE hti = (SELECT hti FROM asignatura where nomasignatura LIKE 'BASE%') MEJO DE JOINS /*MANEJO DE JOINS Y REUNION NATURAL */ /*MOSTRAR TODOS LOS DOCENTES QUE EMPIESEN POR JOSE*/ SELECT d.nombre,p.nompregrado FROM docente d, pregrado p WHERE (d.nombre LIKE 'JOSE%') AND (p.codpregrado=d.codpregrado) SELECT d.nombre,p.nompregrado FROM docente d INNER JOIN pregrado p ON (p.codpregrado=d.codpregrado) WHERE (d.nombre LIKE 'JOSE%') En este ejemplo se realiza el manejo de los JOINS con varias tablas SELECT d.nombre, c.nomciudad,a.nomasignatura FROM docente d inner JOIN ciudad c ON (d.codciudad=c.codciudad) AND (d.nombre LIKE 'LUIS%') inner join asignatura a ON (a.ceduladocente=d.cedula) MEJO DE VISTAS EN ORACLE DEFINICIÓN Una vista no es más que una consulta almacenada a fin de utilizarla tantas veces como se Desee. Una vista no contiene datos sino la instrucción SELECT necesaria para crear la Vista, eso asegura que los datos sean coherentes al utilizar los datos almacenados en las Tablas. Las vistas se emplean para: � Realizar consultas complejas más fácilmente � Proporcionar tablas con datos completos � Utilizar visiones especiales de los datos SINTAXIS CREATE [OR REPLACE] VIEW NOMBREVISTA [(COLUMNA [,COLUMNA])] AS CONSULTA; /*MANEJO Y CREACION DE VISTAS */ /**/ CREATE VIEW CPROFESORES AS SELECT * FROM docente /*MOSTRAR EL CONTENIDO DE LAS VISTAS */ SELECT *FROM cprofesores /*BORRAR UNA VISTA */ DROP VIEW cprofesores REALIZAR LOS SIGUIENTES EJERCICIOS APLICANDO EL MENEJO DE SUBCONSULTAS, JOINS Y VISTAS A. Se necesita saber en qué salones da clases la profesora Jenny Trejos y Mary Luz, aplicando INNER JOIN. B. Contar cuantas profesoras y profesores hay en la UCEVA, agrupar C. Mostrar que cantidad de profesores hay por cada programa. D. Mostrar los nombres de las asignaturas y los docentes del programa de ingeniería con sus horarios. Utiliza INNER JOINS E. Mostrar las áreas de las asignaturas de los profesores con un sueldo mayor de 1800000 F. Seleccionar todos los docentes que tengan la fecha de ingreso mayor que la del profesor Rodrigo Herrera. G. Todas estas consultas deben ser guardadas en su respectiva vista.