Top Banner
©® CBR 1 UEA 1115114: Base de Datos 7. Cálculo Relacional (práctica en MySQL) Carlos Barrón Romero Departamento de Ciencias Básicas, División Ciencias Básicas e Ingeniería UAM Azcapotzalco Oficina: H 3er. piso, Coordinaciones de CBI, Oficina: 18 Tel. 5318 9000 ext. 2011, 112 Contacto: [email protected], Página: http://ce.azc.uam.mx/profesores/cbrrn/
18

UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

Aug 05, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 1

UEA 1115114: Base de Datos

7. Cálculo Relacional (práctica en MySQL)Carlos Barrón Romero

Departamento de Ciencias Básicas, División Ciencias Básicas e Ingeniería

UAM AzcapotzalcoOficina: H 3er. piso, Coordinaciones de CBI, Oficina: 18

Tel. 5318 9000 ext. 2011, 112Contacto: [email protected],

Página: http://ce.azc.uam.mx/profesores/cbrrn/

Page 2: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 2

Recordatorio

1. Miércoles Presentación y discusión para su aprobación del proyecto del Curso

Page 3: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 3

Recapitulación

1. Vimos un conjunto suficiente de Operaciones del Álgebra Relacional del Modelo de BD RelacionalSelección (<R1> WHERE <Condición>), Proyección (<R1l> { atributos1, Atrib2, …}), Producto(<R1> X <R2>), Unión (<R1> ∪ <R2>), Intersección (<R1> ∩ <R2>), Diferencia (<R1> \ <R2>), Junta(<R1> JOIN <R2>), SemiJunta <R1> SEMIJOIN <R2> División (<R1> DIVIDEBY <R2> PER <R3>)

Page 4: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 4

Objetivos y actividades de la clase

Conocer las operaciones del cálculo relacional para manipular (realizar consultas) en base de datos relacionales

Los alumnos realizaran operaciones en el pizarrón, en su cuaderno y en sus computadoras con MySQL

Page 5: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 5

Operaciones del Cálculo del Modelo de BD Relacional (<R>) WHERE <FBF>FBF Fórmula bien formada o en Ingles well-formed formula (WFF)Cuantificadores

FORALL <R> (P)EXISTS <R> (P)

<R> es una relación y P un predicado lógico, con valores falso o verdadero

Cálculo de dominios (ATRIBUTO=DOMINIO)ATRIBUTO = ATRIBUTO (VALOR)

Page 6: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 6

Operaciones del Cálculo del Modelo de BD Relacional

También se pueden usar funciones MIN(ATRIBUTO)MAX(ATRIBUTO)OPERADOR_ESTADISTICO(ATRIBUTO)

y AS para renombrar

Page 7: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 7

SQL Modelo de Consulta

SELECT <que> FROM <relación>WHERE <condición>

Page 8: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 8

BD Relacional, Ejemplo 2, Base Provedores_partes_Proyectos

V

VPY YP

Proveedores (V), Partes (P), Proyectos (Y)

Construya la Base de datos en MySQL usando MyPHPAdmin

Page 9: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 9

BD Relacional, Ejemplo 2V

P

Y

VPY

Copie los datos en su base de datos

Page 10: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 10

Ejemplos, Escriba la versión SQL

CLAVE Y ESTATUS DE PROVEEDORES CON ESTATUS > 20 Y CIUDAD = París

(V.V#, V.STATUS) WHERE EXISTS (V.CIUDAD = ‘PARIS’) AND V.STATUS > 20

(V.V#, V.STATUS) WHERE FORALL (V.CIUDAD = ‘PARIS’) AND V.STATUS > 20

(V.V#, V.STATUS) WHERE V.CIUDAD = ‘PARIS’AND V.STATUS > 20

STATUS30

V#V3

Realice los ejemplos en MySQL

Page 11: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 11

Ejemplos

CLAVE Y ESTATUS DE PROVEEDORES CON ESTATUS > 20 Y CIUDAD = París

SELECT `V`.`V#`, V.STATUS FROM VWHERE ( (`V`.`STATUS` >20) AND ( `V`.`CIUDAD` = 'París') )

Page 12: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 12

Ejemplos, Escriba la versión SQL

PROVEEDORES QUE SURTEN LA PARTE P2

V WHERE EXISTS ( V.V# = VPY.V# AND

VPY.P# = P#(‘P2’))

CIUDADATENAS

STATUS30

PROVEEDORADAMS

V#V5

Page 13: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 13

Ejemplos

PROVEEDORES QUE SURTEN LA PARTE P2

SELECT DISTINCT `V` . * FROM V, VPYWHERE ((`V`.`V#` = `VPY`.`V#` )AND (`VPY`.`P#` = 'P2'))

Page 14: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 14

Ejemplos

PROVEEDORES QUE SURTEN LA PARTE P2

SELECT `V` . * FROM V, VPYWHERE ((`V`.`V#` = `VPY`.`V#` )AND (`VPY`.`P#` = 'P2'))

Page 15: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 15

Ejemplos, Escriba la versión SQL

NOMBRE DE LOS PROVEEDORES QUE SURTEN UNA PARTE ROJA

V.PROVEEDOR WHERE EXISTS ( V.V# = VPY.V# AND

VPY.P# = P.P# ANDP.COLOR = COLOR(‘ROJO’)

)PROVEEDORSMITHBLAKECLARKADAMS

Page 16: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 16

Ejemplos

PROVEEDORES QUE SURTEN una parte ROJA

SELECT `V` . * FROM V, VPY, PWHERE ( ( `V`.`V#` = `VPY`.`V#` )AND ( `VPY`.`P#` = `P`.`P#`)AND (`P`.`COLOR` = 'Rojo'))

SELECT DISTINCT `V`. * FROM V, VPY, PWHERE ( (`V`.`V#` = `VPY`.`V#` )AND (`VPY`.`P#` = `P`.`P#` )AND (`P`.`COLOR` = 'Rojo'))

Page 17: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 17

Ejemplos, Escriba la versión SQL

NOMBRE DE LOS PROVEEDORES QUE SURTEN TODAS LAS PARTES

V.PROVEEDOR WHERE FORALL P (

EXISTS VPY ( VPY.V# = V.V# AND VPY.P# = P.P#) )

PROVEEDORADAMS

Page 18: UEA 1115114: Base de Datosacademicos.azc.uam.mx/cbr/Cursos/UEA_Base_de_Datos/... · relacional para manipular (realizar consultas) en base de datos relacionales yLos alumnos realizaran

©® CBR 18Carlos Barron Romero18

Conclusiones y reflexiones

Contacto: Carlos Barrón [email protected]

Este es un espacio para meditar que se entendió y reflexionar en consecuencias, usos, mejoras, relaciones con otros temas, ...