25.10.2014 Views

El modelo relacional y el álgebra relacional - Dataprix

El modelo relacional y el álgebra relacional - Dataprix

El modelo relacional y el álgebra relacional - Dataprix

SHOW MORE
SHOW LESS

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.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!