El modelo relacional y el álgebra relacional - Dataprix
El modelo relacional y el álgebra relacional - Dataprix
El modelo relacional y el álgebra relacional - Dataprix
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
© FUOC • P06/M2109/02148 33 <strong>El</strong> <strong>mod<strong>el</strong>o</strong> <strong>r<strong>el</strong>acional</strong> y <strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong><br />
5. <strong>El</strong> álgebra <strong>r<strong>el</strong>acional</strong><br />
Como ya hemos comentado en <strong>el</strong> apartado dedicado a las operaciones d<strong>el</strong> <strong>mod<strong>el</strong>o</strong><br />
<strong>r<strong>el</strong>acional</strong>, <strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong> se inspira en la teoría de conjuntos para<br />
especificar consultas en una base de datos <strong>r<strong>el</strong>acional</strong>.<br />
Consultad <strong>el</strong> apartado 3<br />
de esta unidad didáctica.<br />
Para especificar una consulta en álgebra <strong>r<strong>el</strong>acional</strong>, es preciso definir uno o<br />
más pasos que sirven para ir construyendo, mediante operaciones de álgebra<br />
<strong>r<strong>el</strong>acional</strong>, una nueva r<strong>el</strong>ación que contenga los datos que responden a la consulta<br />
a partir de las r<strong>el</strong>aciones almacenadas. Los lenguajes basados en <strong>el</strong> álgebra<br />
<strong>r<strong>el</strong>acional</strong> son procedimentales, dado que los pasos que forman la consulta<br />
describen un procedimiento.<br />
La visión que presentaremos es la de un lenguaje teórico y, por lo tanto, incluiremos<br />
sólo sus operaciones fundamentales, y no las construcciones que se podrían<br />
añadir a un lenguaje comercial para facilitar cuestiones como por ejemplo <strong>el</strong> orden<br />
de presentación d<strong>el</strong> resultado, <strong>el</strong> cálculo de datos agregados, etc.<br />
Una característica destacable de todas las operaciones d<strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong><br />
es que tanto los operandos como <strong>el</strong> resultado son r<strong>el</strong>aciones. Esta<br />
propiedad se denomina cierre <strong>r<strong>el</strong>acional</strong>.<br />
Las operaciones d<strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong> han sido clasificadas según distintos criterios;<br />
de todos <strong>el</strong>los indicamos los tres siguientes:<br />
1) Según se pueden expresar o no en términos de otras operaciones.<br />
a) Operaciones primitivas: son aqu<strong>el</strong>las operaciones a partir de las cuales podemos<br />
definir <strong>el</strong> resto. Estas operaciones son la unión, la diferencia, <strong>el</strong> producto<br />
cartesiano, la s<strong>el</strong>ección y la proyección.<br />
Implicaciones d<strong>el</strong> cierre<br />
<strong>r<strong>el</strong>acional</strong><br />
<strong>El</strong> hecho de que <strong>el</strong> resultado<br />
de una operación d<strong>el</strong> álgebra<br />
<strong>r<strong>el</strong>acional</strong> sea una nueva<br />
r<strong>el</strong>ación tiene implicaciones<br />
importantes:<br />
1. <strong>El</strong> resultado de una operación<br />
puede actuar como<br />
operando de otra operación.<br />
2. <strong>El</strong> resultado de una<br />
operación cumplirá todas<br />
las características que ya<br />
conocemos de las r<strong>el</strong>aciones:<br />
no-ordenación de las tuplas,<br />
ausencia de tuplas repetidas,<br />
etc.<br />
b) Operaciones no primitivas: <strong>el</strong> resto de las operaciones d<strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong><br />
que no son estrictamente necesarias, porque se pueden expresar en términos<br />
de las primitivas; sin embargo, las operaciones no primitivas permiten<br />
formular algunas consultas de forma más cómoda. Existen distintas versiones<br />
d<strong>el</strong> álgebra <strong>r<strong>el</strong>acional</strong>, según las operaciones no primitivas que se incluyen. Nosotros<br />
estudiaremos las operaciones no primitivas que se utilizan con mayor frecuencia:<br />
la intersección y la combinación.<br />
2) Según <strong>el</strong> número de r<strong>el</strong>aciones que tienen como operandos:<br />
a) Operaciones binarias: son las que tienen dos r<strong>el</strong>aciones como operandos.<br />
Son binarias todas las operaciones, excepto la s<strong>el</strong>ección y la proyección.