Procesamiento de consultas

27,521 views

Published on

  • Be the first to comment

  • Be the first to like this

Procesamiento de consultas

  1. 1. BASE DE DATOS AVANZADASUnidad 6: Procesamiento de ConsultasESCUELA: Ciencias de la ComputaciónNOMBRES: Ing. Juan Carlos Morocho 1
  2. 2. Objetivo del procesamiento de consultasTransformar consultas escritas en lenguaje dealto nivel, como SQL, en estrategias deejecución optimizadas para aprovechar losrecursos.Normalmente una estrategia de ejecución seexpresa en lenguaje de bajo nivel, comoálgebra relacional.
  3. 3. Descomposición de consultasAnálisis La tabla “empleado” no existe, el nombre correcto es “empleados”.SELECT + FROM empleado; El símbolo “+” no se reconocerá, lo correcto sería “ӿ”.Como resultado del análisis esta consulta serechazará.
  4. 4. Descomposición de consultasNormalizaciónSELECT * FROM empleadosWHERE cargo=‘Vendedor’ OR jefe=“N” ANDcomision>0;Forma normal conjuntiva:(cargo=‘Vendedor’ OR jefe=“N”) AND comision>0Forma normal disyuntiva:(cargo=‘Vendedor’ AND comision>0) OR (jefe=“N”AND comision>0)
  5. 5. Descomposición de consultasAnálisis semánticoSELECT nombre, apellidoFROM empleadosWHERE cargo=‘Vendedor’ AND comision>0; πnombre, apellido σcargo=‘Vendedor’ ᴧ comision>0 Empleados
  6. 6. Descomposición de consultasSimplificaciónCREATE VIEW Staff3 ASSELECT staffNo,fName,lName,salary,branchNoFROM StaffWHERE branchNo=‘B003’;SELECT *FROM Staff3WHERE (branchNo=‘B003’ AND salary>2000);Para efectos de la ejecución, como la vista ya tiene lacondición branchNo=‘B003’, en la consulta siguientesobre la vista, se hace innecesaria dicha condición.
  7. 7. Descomposición de consultasReestructuración de la consultaUna vez analizados los pasos anteriores, laconsulta se reestructura para que suejecución sea más eficiente y se aprovecheal máximo los recursos.
  8. 8. Información de contacto:E-mail: jcmorocho@utpl.edu.ecCuenta en skype: jcmorocho
  9. 9. 9
  10. 10. 9

×