Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2015, 19:22
cargarsupra
 
Fecha de Ingreso: octubre-2008
Mensajes: 22
Antigüedad: 15 años, 6 meses
Puntos: 1
Información Diferenciar de qué base de datos es cada resultado

Buenas tardes.

Antes de nada, gracias por la ayuda y por leer el "ladrillo".

Tengo 2 webs cada una con su base de tados. Cada base de datos tiene una tabla con las opiniones de los clientes. Ambas webs alojadas en el mismo servidor y con un usuario a la base de datos común.

web1->basededatos1->tablaopiniones1->campos nombre,opinion,fecha
web2->basededatos2->tablaopiniones2->campos nombre,opinion,fecha

Ahora quiero mostrar en una web general las opiniones de ambas webs ordenadas por fecha, de tal manera que si alguien deja una opinión en alguna de las dos webs, aparezca la primera en esta web general (en realidad son muchas mas webs de 2, pero para simplificar lo dejamos en 2).

el caso es que hago una única consulta con el operador UNION para en un solo paso tenerlo listo:


Código MySQL:
Ver original
  1. SELECT nombre,opinion,fecha FROM basededatos1.tablaopiniones1
  2. SELECT nombre,opinion,fecha FROM basededatos2.tablaopiniones2

Cita:
Editado: Código de programación no permitido en foros de Bases de Datos.
Leer las reglas del foro, por favor.

Con ello consigo que funcione y me muestre un listado de opiniones de ambas webs ordenado por fecha de mas reciente a mas antiguo, indicando fecha, el nombre en rojo y finalmente la opinión.

Lo que quiero es que me diferencia de que base de datos es cada la opinión, por ejemplo, mostrando al final del "echo" un texto "web1" o "web2".

He pensado hacerlo creando un campo personalizado en la tabla opiniones de cada base de datos y finalmente recuperarlo en la cosulta y sacarlo en el "echo", pero me parece un poco "chapuza" y poco elegante.

Supongo que se podrá diferencia de alguna manera en la consulta para no tener que tocar las bases de datos.

Muchas gracias por vuestra ayuda.

Última edición por gnzsoloyo; 20/01/2015 a las 03:59