S7 TP D - RELACIONES Y CONSULTAS MULTITABLAS EN LA BASE DE DATOS

RELACIONES EN LA BASE DE DATOS
¿Que Son Las Relaciones?
Las relaciones permiten evitar los datos Las relaciones permiten evitar los datos redundantes, en una base de datos relacional todos redundantes, en una base de datos relacional todos los datos se almacenan y se accede a ellos por medio los datos se almacenan y se accede a ellos por medio de relaciones.de relaciones.
Las relaciones que almacenan datos son llamadas Las relaciones que almacenan datos son llamadas “relaciones base” y su implementación es llamada“relaciones base” y su implementación es llamada “tabla”

Características
  • Una Base de Datos Relacional se compone de varias tablas o relaciones.
  • No pueden existir dos tablas con el mismo nombre ni registro.
  • Cada tabla es a su vez un conjunto de registros (filas y columnas).
  • La relación entre una tabla padre y un hijo se lleva a cabo por medio deLa relación entre una tabla padre y un hijo se lleva a cabo por medio de las claves primarias y ajenas (o foráneas). 
  • Las claves primarias son la clave principal de un registro dentro de una Las claves primarias son la clave principal de un registro dentro de una tabla y éstas deben cumplir con la integridad de datos.
  • Las claves ajenas se colocan en la tabla hija, contienen el mismo valor Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la clave primaria del registro padre; por medio de éstas se hacen lasque la clave primaria del registro padre; por medio de éstas se hacen las relaciones
En esta imagen vemos unode los tipos de datos, la relación uno a uno: Es cuando relaciona un registro de la tabla A con un registro de la tabla B.


Las relaciones que se establecen entre los diferentes elementos de dos tablas en una base de datos relacional pueden ser de tres tipos distintos:

1- Relación Uno a Uno
  • Ambos campos comunes deben tener indice único. Esto significa que la propiedad indexado de estos campos debe tener "SI". Si ambos campos tienen un indice único Access crea una relación uno a uno.
2- Relación Uno a Varios
  • Ocurre cuando un registro de la tabla A puede tener mas de un registro asociado en la tabla B, mientras que, un registro de la tabla B posee como máximo un registro asociado en la tabla A.
  • se establecen entre varias entidades de una tabla y una entidad de otra tabla. Un ejemplo sería una tabla de pluviómetros en la que se indicara el municipio en el que se encuentra. La relación sería entre un municipio y varios pluviómetros
3- Relación Varios a Varios
  • Ocurre cuando un registro de la tabla A puede tener mas de un registro asociado en la tabla B y, análogamente, un registro en la tabla B puede tener mas de un registro asociado en la tabla A.
  • Cada registro de la tabla 1 puede estar enlazado con varios registros de la tabla 2 y viceversa. En el siguiente ejemplo, en la tabla 1 cada película pueden trabajar varios actores y, en la tabla 2, un mismo actor puede trabajar en varias películas:

CONSULTAS MULTITABLAS EN BD
Es posible seleccionar datos de diferentes tablas mediante una solo consulta, esto se realiza con la sentencia SELECT
Consulta de Ejemplo:

               SELECT * FROM tabla1, tabla2;

Con la consulta anterior mostrara todos los datos de la tabla1 y tabla2.
Consultando 2 tablas indicando mediante que campos se unirán y mostrara solo los registros que coincidan:

              SELECT * FROM tabla1, tabla2 WHERE campo1=campo2;

* LEFT JOIN

La cláusula LEFT JOIN devuelve todas los registros de la tabla de la izquierda (tabla1), con las correspondientes de la tabla de la derecha (tabla2). El resultado es NULL en la parte de la derecha cuando no hay registros que correspondan con la condición.

            SELECT * FROM tabla1 AS t1 LEFT JOIN tabla2 AS t2 ON t1.campo=t2.campo;

* RIGHT JOIN

La instrucción RIGHT JOIN devuelve todas los registros de la tabla de la derecha (tabla2), y todas los registros correspondientes de la tabla de la izquierda (tabla1). El resultado será NULL cuando no haya registros correspondientes de la tabla de la izquierda.

            SELECT * FROM tabla1 AS t1 RIGHT JOIN tabla2 AS t2 ON t1.campo=t2.campo;

* UNION

El operador UNION se utiliza cuando se necesita combinar los resultados de dos consultas diferentes. Los resultados no tienen que tener ninguna vinculación entre ellos; se quiere mostrar todos los resultados juntos.

SELECT * FROM tabla1 UNION SELECT * FROM tabla2;


Comentarios