Relaciones en La Base de Datos
Una base de datos relacional permite la utilización simultánea de datos procedentes de más de una tabla .
Al hacer uso de las relaciones, se evita la duplicidad de datos, ahorrando memoria y espacio en el disco, aumentando la velocidad de ejecución y facilitando al usuario/a el trabajo con tablas.
Las tablas se relacionan de dos a dos, donde una de ellas será la tabla principal de la que parte la relación y la otra será la tabla secundaria destino de la relación.
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
► Cuando un registro de una tabla sólo puede estar relacionado con un único registro de la otra tabla y viceversa.
2- Relación Uno a Varios
► Cuando un registro de una tabla (tabla secundaria) sólo puede estar relacionado con un único registro de la otra tabla (tabla principal) y un registro de la otra tabla (tabla principal) puede tener más de un registro relacionado en la primera tabla (tabla secundaria).
2- Relación Varios a Varios
►Cuando un registro de una tabla puede estar relacionado con más de un registro de la otra tabla y viceversa.
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.SELECT * FROM tabla1, 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;
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;
No hay comentarios.:
Publicar un comentario