Tema 4 - Álgebra y Cálculo Relacional PDF

Title Tema 4 - Álgebra y Cálculo Relacional
Course Sistemas De Bases De Datos I
Institution Universidad Pontificia de Salamanca
Pages 4
File Size 131.5 KB
File Type PDF
Total Downloads 68
Total Views 118

Summary

Apuntes del tema 4...


Description

Sistemas de Bases de Datos

Tema 4

Tema 4. Álgebra y Cálculo Relacional 4.1. 4.1.1. 4.1.2. 4.2. 4.2.1. 4.2.2.

Álgebra Relacional Operaciones Fundamentales Operaciones Derivadas Cálculo Relacional Cálculo Relacional orientado a tuplas Cálculo Relacional orientado a dominios

4.1.

Álgebra Relacional

El álgebra relacional es un sistema cerrado de operaciones definidas sobre relaciones. Va a constar de operandos y operadores, donde los operandos son relaciones y los operadores facilitarán resultados que serán relaciones que podrán tomarse como operandos en nuevas operaciones. 4 + 6 = 10 R1 Op R2 = R3 Dentro del álgebra relacional, tenemos cinco operadores fundamentales: • Unión • Diferencia • Producto Cartesiano • Proyección • Selección Estas operaciones forman un conjunto relacionalmente completo porque permiten obtener cualquier subconjunto de información contenido en la base de datos. 4.1.1. Operaciones Fundamentales • Unión: Se expresa como (R  S). Facilita como resultado una relación que incluye a todas las tuplas de R y a todas las de S y ninguna más. Si hubiese una tupla repetida, solo se pondría una vez. Para realizar la unión, las relaciones R y S deben estar definidas en los propios atributos. R: A B C S: A B C R  S: A B C 1 2 3 4 7 9 1 2 3 4 7 9 5 3 8 4 7 9 5 3 8 • Diferencia: la operación diferencia se expresa (R – S) y facilita como resultado todas las tuplas presentes en la relación R y ausentes en la relación S. También debe realizarse sobre atributos idénticos. R: A B C S: A B C R - S: A B C 1 2 3 4 7 9 1 2 3 4 7 9 5 3 8 • Producto Cartesiano: la operación del producto cartesiano (R x S) permite obtener en una relación los datos de relaciones distintas, sin necesidad de compartir los mismos atributos. El producto cartesiano obtiene como resultado de su operación la concatenación de cada una de las tuplas de R con todas las 1

Sistemas de Bases de Datos

Tema 4

de S. En este caso, la relación resultado tendrá por grado la suma de los grados de las relaciones entrada. R: A B C S: D E R x S: A B C D E 1 2 3 7 8 1 2 3 7 8 4 5 7 1 2 1 2 3 1 2 3 8 2 4 5 7 7 8 4 5 7 1 2 3 8 2 7 8 3 8 2 1 2 R: A B C 1 2 3 4 5 7 3 8 2



S: A E 7 8 1 2

R x S: R.A B 1 2 1 2 4 5 4 5 3 8 3 8

C 3 3 7 7 2 2

S.A 7 1 7 1 7 1

E 8 2 8 2 8 2

Proyección: la operación proyección permite obtener un subconjunto de atributos en una tabla con todas sus filas. Aquellas filas que estén duplicadas solo aparecerán una vez. Se representa: 𝜋𝑎𝑡1,𝑎𝑡2,…,𝑎𝑡𝑘 (𝑅)𝑖 R: A B C D 1 6 2 1



2 7 1 4

3 3 3 5

4 5 4 4

𝜋𝐴,𝐶 (𝑅)𝑖

A 1 6 2 1

C 3 3 3 5

Selección: el operador selección obtiene un subconjunto de filas de una tabla con todas sus columnas que cumplan una determinada condición, que vendrá expresada mediante una fórmula. Dentro de la fórmula, podremos tener operadores aritméticos ( +, -, *, / ) y comparadores ( >, =, 3(𝑅)𝑖

A B C D 5 7 2 1 4 8 7 6

4.1.1. Operaciones Derivadas • Intersección: la intersección de dos relaciones con atributos idénticos nos dará las tuplas presentes en las dos relaciones. Se expresa ( R  S ). ( R  S ) = ( S – ( S – R) ) = ( R – ( R – S ) )

2

Sistemas de Bases de Datos R: A B C 1 2 3 4 7 9 •

S: A B C 4 7 9 5 3 8

Tema 4 R  S: A B C 4 7 9

Join / Reunión Natural: es la operación más importante del modelo relacional, ya que permite relacionar dos tablas que tengan al menos un atributo común a través de las columnas homónimas que presenten el mismo valor. Representamos el join como ( R Y S ), en el cuál ofrece la unión de R y S siempre y cuando presenten el mismo valor en columnas con el mismo nombre. Los pasos para su cálculo son los siguientes: 1. Realizamos el producto cartesiano de R y S. 2. Seleccionamos las tuplas que tengan en las columnas homónimas el mismo valor. 3. Suprimimos una de las columnas homónimas. R: A B C S: B C D R Y S: A B C D a b c b c d a bcd d b c b c e a bce b b f a d b d bcd c a d d bce c adb R: A B C 1 3 5 5 7 2 4 9 8

S: C D 5 1 5 3 8 7 9 2

R Y S: A B C D 1351 1353 4987

4.2. Cálculo Relacional El cálculo relacional es un lenguaje propuesto también por Codd como alternativa al álgebra relacional. A diferencia del álgebra relacional que especifica los operadores, es un lenguaje no procedimental que simplemente expresa el resultado a obtener mediante lógica matemática utilizando para ello cálculo de predicados de primer orden. Este cálculo presenta dos variantes en función a las variables que tenemos en cuenta. Si son filas nos referimos a tuplas y si nos referimos a las columnas hablamos de dominios, mientras que si las variables representan las columnas de las tablas relacionales hablaremos de cálculo relacional orientado a dominios. 4.2.1. Cálculo Relacional orientado a tuplas (filas) Utiliza variables que representan tuplas de la relación. Las consultas se especifican mediante un conjunto de tuplas que satisfacen una determinada fórmula. Se expresa como E = { t / F(t) }. Para expresar la fórmula utilizaremos la notación t [Atributo] para referirnos a un atributo de una determinada notación. Ejemplo: t [Curso] = 2.

3

Sistemas de Bases de Datos

Tema 4

Para expresar que una variable pertenece a una relación pondremos t pertenece a una relación (t c Relación). Cuándo tengamos que trabajar con más de una relación, se recomienda crear una variable para cada relación. Se puede utilizar el símbolo =, >, =,...


Similar Free PDFs