Sql Consultas MáS Complejas

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Sql Consultas MáS Complejas - Presentation Transcript

    1. SQL
      • CONSULTAS MÁS COMPLEJAS
      SQL. Structured Query Language
    2. CONSULTAS MULTITABLA
      • En ocasiones necesitamos realizar consultas que involucren a varias tablas.
      • En este caso, los nombres de las tablas aparecen a la derecha de la palabra FROM.
          • SELECT campo1, campo2, ....
          • FROM tabla1, tabla2, ....
          • WHERE condición de combinación de las tablas
    3. CONSULTAS MULTITABLA
      • Se pueden incluir tantas tablas como queramos
      • En la cláusula SELECT se pueden citar columnas de todas las tablas
      • Si hay columnas con el mismo nombre en las distintas tablas, se deben especificar de la forma NombreTabla.NombreColumna
    4. CONSULTAS MULTITABLA
      • El criterio para combinar las tablas ha de especificarse en la cláusula WHERE.
      • Si no se hace, el resultado es un PRODUCTO CARTESIANO que empareja todas las filas de una tabla con cada fila de otra.
    5. EJEMPLOS Vamos a realizar consultas sobre las tablas emple y depart
    6. CONSULTAS MULTITABLA. EJEMPLOS
      • Apellidos, oficio, nombre de departamento y localidad de todos los empleados.
        • SELECT apellido,oficio,dnombre,loc
        • FROM emple,depart
        • WHERE emple.dept_no=depart.dept_no;
    7. SQL
      • Ejemplo de consulta multitabla
    8. CONSULTAS MULTITABLA. EJEMPLOS
      • Apellido, oficio, número de departamento y nombre de departamento de los empleados de los departamentos 10 ó 20.
      • SELECT apellido,oficio, emple.dept_no ,dnombre
      • FROM emple,depart
      • WHERE emple.dept_no=depart.dept_no AND emple.dept_no IN (10,20);
      dept_no aparece en dos tablas, por tanto hay que especificar antes el nombre de la tabla
    9. CONSULTAS MULTITABLA. EJEMPLOS
      • ¿Qué ocurre si no se especifica el criterio de combinación de tablas?
      • En este caso el resultado es un producto cartesiano que combina todas las filas de una tabla con los de la otra
      • SELECT apellido, emple.dept_no, dnombre
      • FROM emple,depart;
      • En el resultado de la consulta tendríamos 16*4=64 filas, en lugar de 14
    10. CONSULTAS MULTITABLA. EJEMPLOS
      • Tenemos las siguientes tablas:
          • ALUMNOS( nif ,apenom,direc,pobla,telef);
          • ASIGNATURAS( cod ,nombre);
          • NOTAS( nif ,cod,nota);
      • Relaciones: ALUMNOS(nif)-> NOTAS(nif)
      • NOTAS(cod) -> ASIGNATURAS(cod)
    11. CONSULTAS MULTITABLA. EJEMPLOS
      • Apellidos, nombre y nota de todos los alumnos.
      • SELECT apenom,nombre,nota
      • FROM alumnos,asignaturas,notas
      • WHERE alumnos.nif=notas.nif AND asignaturas.cod=notas.co d;
    12. CONSULTAS MULTITABLA. EJEMPLOS
      • La misma consulta que la anterior, pero sólo los alumnos cuya asignatura es FOL.
      • SELECT apenom,nombre,nota
      • FROM alumnos,asignaturas,notas
      • WHERE alumnos.nif=notas.nif AND asignaturas.cod=notas.cod AND nombre=’FOL’;
    13. CONSULTAS DE RESUMEN
      • SQL dispone de una serie de funciones que permiten realizar cálculos sobre determinados campos de tablas de la base de datos.
      • ¿Cuál es el salario máximo de los empleados del departamento 10?
      • ¿Cuál es la media de salarios del departamento de contabilidad?
      • ¿Cuántos empleados hay en el departamento de ventas?
    14. CONSULTAS DE RESUMEN Función Propósito AVG(campo) Calcula el valor medio COUNT(*|expresión) Cuenta el número de veces MAX(campo) Calcula el valor máximo MIN(campo) Calcula el valor mínimo SUM(campo) Obtiene la suma de valores
    15. CONSULTAS DE RESUMEN. EJEMPLOS
      • Calcular el salario medio de todos los empleados
        • SELECT AVG(salario) FROM emple;
      • Salario máximo de los empleados del departamento 10.
        • SELECT max(salario) FROM emple WHERE dept_no=10;
    16. CONSULTAS DE RESUMEN. EJEMPLOS
      • Número de empleados del departamento 10
        • SELECT COUNT(*) FROM emple WHERE dept_no=10;
      • Número de filas de la tabla empleados donde la comisión no es nula
        • SELECT COUNT(comision) FROM emple WHERE dept_no=10;
    17. CONSULTAS DE RESUMEN. EJEMPLOS
      • Obtener el apellido mínimo de los empleados del departamento 20.
        • SELECT min(apellido) FROM emple WHERE dept_no=20;
      • Calcular la suma de salarios y el salario medio de todos los empleados.
        • SELECT sum(salario),avg(salario) FROM emple;

    + alexmeronoalexmerono, 2 years ago

    custom

    10774 views, 0 favs, 3 embeds more stats

    Presentación de SQL. Consultas multitabla y consul more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 10774
      • 9603 on SlideShare
      • 1171 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 219
    Most viewed embeds
    • 1166 views on http://www.alejandrox.com
    • 4 views on http://mail.ciac.edu.co:88
    • 1 views on http://192.168.129.3

    more

    All embeds
    • 1166 views on http://www.alejandrox.com
    • 4 views on http://mail.ciac.edu.co:88
    • 1 views on http://192.168.129.3

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Tags