Foros del Web » Programando para Internet » PHP »

Select de tres tablas, simple

Estas en el tema de Select de tres tablas, simple en el foro de PHP en Foros del Web. Hola, foreros: Por mas que leo lo de juntar tablas con join no lo entiendo... jeje. He intentado hacerlo con tres tablas pero me es ...
  #1 (permalink)  
Antiguo 30/05/2008, 14:03
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Select de tres tablas, simple

Hola, foreros:

Por mas que leo lo de juntar tablas con join no lo entiendo... jeje. He intentado hacerlo con tres tablas pero me es muy dificil, siempre me da errores. He buscado pero todos los que he visto tienen las mismas tablas o no se parece a lo que quiero, tal vez por ser demasido simple, jeje.

Mirar quiero hacer un select de tres tablas (casa, trabajo, libre), que tiene los mismos campos (titulo y texto e id), el problema es que no se hacerlo...

Este es para una tabla. El select es para un buscador...

Código PHP:
$sql "select * from casa WHERE title like '%$buscar%' ORDER BY id DESC"
¿Me hechais una manita ?
  #2 (permalink)  
Antiguo 30/05/2008, 14:07
 
Fecha de Ingreso: enero-2008
Mensajes: 163
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Select de tres tablas, simple

no entiendo bien quieres hacer el select de 3 tablas en un solo select o 1 select para cada tabla?
  #3 (permalink)  
Antiguo 30/05/2008, 14:19
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Respuesta: Select de tres tablas, simple

Hola de nuevo...

Quiero hacer un solo select de las 3 tablas, jeje, no me explique bien...

¿Se puede?
  #4 (permalink)  
Antiguo 30/05/2008, 14:29
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 1 mes
Puntos: 52
Respuesta: Select de tres tablas, simple

ha de ser algo asi:

Cita:

$sql = "select * from (casa,trabajo,libre) WHERE title like '%$buscar%' ORDER BY id DESC";
Me imagino que en el foro de MySQL re podran ayudar mas
Un saludo
  #5 (permalink)  
Antiguo 30/05/2008, 14:31
 
Fecha de Ingreso: enero-2008
Mensajes: 163
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Select de tres tablas, simple

si se puede hacer pero necesitas tenerlas relacionadas por medio de ids por ejemplo en tu casa no se como tienes el modelo de tu bd pero puedes hacer lo siguiente crear una tabla nombrex la cual contenga los 3 id de tus 3 tablas por logica van hacer llaves foraneas las 3 foreign keys ya que tengas eso puedes dar un select de este tipo.
nombrex campos
id_casa llave foranea de casa id
id_trabajo llave foranea de trabajo id
id_libre llave foranea de libre id
no se te olvide indexarlas tambien
Cita:
select * from nombrex,casa,trabajo,libre where casa.id=nombrex.id_casa and trabajo.id=nombrex.id_trabajo and libre.id=nombrex.id_libre;
si quieres especificar que solo salga ciertos campos seria asi por ejemplo

Cita:
select titulo.casa,trabajo.texto,libre.titulo from nombrex,casa,trabajo,libre where casa.id=nombrex.id_casa and trabajo.id=nombrex.id_trabajo and libre.id=nombrex.id_libre;
espero te sirva
  #6 (permalink)  
Antiguo 02/06/2008, 00:52
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Respuesta: Select de tres tablas, simple

Hola de nuevo...

No se si me explique bien o no, jeje... He probado todo lo que me comentais y no se si lo hago mal o es que no es lo que busco... jeje.

Yo buscaba hacer un select, solo uno, de tres tablas. Estas tres tablas tiene tres columnas, titulo, texto y fecha. Es decir:

Primera_tabla:
titulo
texto
fecha

Segunda_tabla:
titulo
texto
fecha

Tercera_tabla:
titulo
texto
fecha

Lo que busco es hacer un select de esas tablas...

¿Como lo hago?, es que por mucho que lo intento me armo un lio... jeje...
  #7 (permalink)  
Antiguo 02/06/2008, 02:46
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Respuesta: Select de tres tablas, simple

Hola, de nuevo...

Estoy probando, pero me da error de codigo no valido. ¿Que tiene de malo el siguiente codigo?, creo que el problema esta en el where y like...

Código PHP:
$sql "SELECT blog.title, blog.text FROM blog WHERE blog. like '%$buscar%' UNION SELECT biographies.title, biographies.text FROM biographies WHERE biographies.like '%$buscar%'"
¿Alguna idea?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:58.