Abrir multiples base de datos desde mysql

Es muy común tener toda la información que necesitamos en diferentes tablas, contenidas en la misma base de datos. Una vez me pasó que tenía que relacionar 2 tablas en una misma consulta, pero cada tabla estaba en una base de datos diferente. Se me ocurrió que era imposible, ya que creaba 2 links de conección $con1 y $con2,  y cuando revisaba los 2 links, ambos apuntaban a la última base de datos que yo enlazaba… casi me di por vencido, pero alguien me pas;o un tips, y probando y probando, di con lo siguiente:

$sql=”SELECT a.campo1,a.campo2,b.campo1,b.campo2 FROM base1.tabla1 a, base2.tabla2 b WHERE a.campo1=b.campo1 ORDER BY b.campo2,a.campo1 DESC”;

“a” es un alias que representa a “base1.tabla1″ (la tabla de la primera base de datos)
“b” es un alias que representa a “base2.tabla2″ (la tabla de la segunda base de datos)
“a.campo1″ es el “campo1″ de la tabla “tabla1″ de la base de datos “base1″
“a.campo2″ es el “campo2″ de la tabla “tabla1″ de la base de datos “base1″
“b.campo1″ es el “campo1″de la tabla “tabla2″  de la base de datos “base2″
“b.campo2″ es el “campo2″de la tabla “tabla2″  de la base de datos “base2″

Utilicé los alias “a” y “b” para simplificar la consulta, y resulta bastante útil, ya que una consulta con muchos campos y tablas se hace algo difícil de elaborar, y hasta de leer, sobre todo cuando son muchos nombres muy largos como base1.tabla1.campo1… más fácil es escribir a.tabla1…

Escribe un comentario