Comando Join
Este comando sirve para combinar dos o mas tablas, devuelve la información que encuentra esa unión .
sintaxis:
select *from tabla1 inner join tabla2 on tabla1.id=tabla2.id inner join tabla3 on tabla2.id=tabla3.id3;
Ejemplo1
select distinct libro.idlibro, libro.descripcion, autor.codautor, autor.nombre from libro inner join liautedi on libro.idlibro= liautedi.idlibro inner join autor on liautedi.codautor=autor.codautor;
como exportar a un archivo
se le agrega la consulta lo siguiente:
into outfile' ruta terminada con el nombre del archivo y extension'
sintaxis:
select distinct libro.idlibro, libro.descripcion, autor.codautor, autor.nombre from libro inner join liautedi on libro.idlibro= liautedi.idlibro inner join autor on liautedi.codautor=autor.codautor into outfile
'c:/xampp/libroautorjoin.xls';
el left join se utiliza para saber que registro no tienen correspondencia en otra tabla. verifica de una tabla izquierda a una tabla derecha, si no encuentra coincidencias se genera una fila extra con todos ceteados a NULL.
Ejemplo:
visualizar que libros no se les ha asignado un autor utilizando el left join
sintaxis:
select libro.idlibro, libro.descripcion, liautedi.idlibro from libro left join liautedi on libro.idlibro=liautedi.idlibro where liautedi.idlibro is null;
Ejemplo 2
visualizar las asginaturas que no tienen libros.
sintaxis:
select asignatura.codigomat,asignatura.nombre,libro.codigomat from asignatura left join libro on libro.codigomat=asignatura.codigomat where libro.codigomat is null;
El Right join opera del mismo modo que left join, solo que la busqueda de coincidencias las realiza del modo contrario, es decir busca valores de las coincidencias desde la tabla de la derecha hacia la tabla izquierda y sucede lo mismo que en el left, sino encuentra coincidencias se genera una fila externa con todos los campos ceteados en null.
ejemplo 1
visualizar el listado de los libros que tienen al menos un autor asignado
sintaxis.
select libro.idlibro,libro.descripcion,liautedi.idlibro from libro right join liautedi on libro.idlibro=liautedi.idlibro;
en este archivo esta el tee sobre los ejemplos realizados con los comandos join.