Ver Mensaje Individual
  #4 (permalink)  
Antiguo 30/05/2010, 09:01
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: UNION ALL SELECT tablas diferentes

Si las tablas tienen la misma estructura, el problema debe ser la ausencia de paréntesis y la ausencia de llaves para indicar el verdadero valor de la variable (esto es más PHP). También te diría que no usaras *, sino los nombres de los campos. Esta es la idea:
$resultadod=mysql_query("


(SELECT campo1, campo2, campo3, 'tabla 1' tabla FROM tabla1

WHERE
1campo1 LIKE '%{$_POST[palabra]}%' OR
1campo2 LIKE '%{$_POST[palabri]}%' OR
1campo3 LIKE '%{$_POST[palabri]}%' )


UNION ALL (SELECT campo1, campo2, campo3, 'tabla 2' FROM tabla2

WHERE
2campo1 LIKE '%{$_POST[palabra]}%' OR
2campo2 LIKE '%{$_POST[palabra]}%' OR
2campo3 LIKE '%{$_POST[palabra]}%' )


UNION ALL (SELECT campo1, campo2, campo3, 'tabla diferente' FROM tabladiferente

WHERE
campodiferente1 LIKE '%{$_POST[palabra]}%' OR
campodiferente2 LIKE '%{$_POST[palabra]}%' OR
campodiferente3 LIKE '%{$_POST[palabra]}%' )

", $conn);

Pero, ojo, tal como está esta consulta no te indicará de qué tabla proceden los datos. Para eso tendrías que traerte tú el nombre de la tabla. Te lo pongo.