top of page

Select Join MySQL (Juntar Tablas)

Si quisieramos  juntar tablas con este comando se haria la Fusion de dos tablas de la base de datos. 

select * from edu.book, edu.publisher;

 

 

  • edu: seria la base de datos o esquema 

  • book y publisher: serian las tablas a juntar.

Tabla Publisher

Tabla Book

select * from edu.book, edu.publisher;

Esta tabla no tendria mucho sentido si miramos las tablas originales  nos daremos cuenta de que se a duplicado los campos.




A continuacion se usa el where para solo mostrar los cambos de idpublisher de ambas tablas que tengas el mismo idpublisher.

select * from edu.book, edu.publisherwhere edu.book.idpublisher=edu.publisher.idpublisher;

Si queremos mostrar solo el titulo, nombre del libro y el telefono el publisher, se quita el * y se ponen los campos 


select book.titulo, book.name, publisher.phone

from edu.book , edu.publisher where edu.book.idpublisher=edu.publisher.idpublisher;
 

Tabla Publisher

Tabla Book

otra manera de hacer lo mismo es con la sentencia INNER JOIN que mostrara lo mismo en la sentencia pasada. 

 

select book.titulo, book.name, publisher.phone from 
edu.book inner join edu.publisher
on publisher.idpublisher=book.idpublisher;

LEFT OUTER JOIN nos sirve para listar TODOS las campos  y sus servicios correspondientes. Las campos que no tienen ningún servicio también formarán parte del resultado. de la tabla de la izquierda y si fuera RIGHT OUTER  JOIN seria de la derecha.



Voy a agregar un registro mas a la tabla de book con un idpublisher=0 y en la tabla publisher no agregare un campo con idpublisher 0 y con la sentencia LEFT OUTER  JOIN se mostrara ese campo aunque no este en la otra tabla.

bottom of page