Foros del Web » Programando para Internet » PHP »

Consulta de 2 o 3 tablas

Estas en el tema de Consulta de 2 o 3 tablas en el foro de PHP en Foros del Web. Hola, tengo el siguiente problema que me tiene loco, tengo las tablas ciudades {id, nombre}, vuelos {id, origen, destino} en las que como veis lo ...
  #1 (permalink)  
Antiguo 24/03/2009, 01:06
 
Fecha de Ingreso: marzo-2009
Mensajes: 4
Antigüedad: 15 años, 1 mes
Puntos: 0
Consulta de 2 o 3 tablas

Hola, tengo el siguiente problema que me tiene loco, tengo las tablas ciudades {id, nombre}, vuelos {id, origen, destino} en las que como veis lo que quiero hacer es muy simple pero estoy vuelto un ..., simplemente quiero consultar los vuelos con su respectivas ciudades por ejemplo:

Tabla ciudades:
id nombre
1 Madrid
2 Valencia
3 Caracas

Tablas vuelos:
id origen destino
1 1 2
2 3 1
3 2 3

Ahora es hacer la consulta de la tabla vuelos y que me devuelva los registros

id origen destino
1 Madrid Valencia
2 Caracas Madrid

He estado haciendo este select pero nada

SELECT ciudades.nombre FROM vuelos, ciudades WHERE vuelos.origen = ciudades.id_ciudades and vuelos.destino = ciudades.id_ciudades

O si alguien me puede decir como implementar esto de una mejor forma, se los agradecere

Saludos
  #2 (permalink)  
Antiguo 24/03/2009, 02:11
Avatar de rafaconpu  
Fecha de Ingreso: febrero-2006
Mensajes: 331
Antigüedad: 18 años, 2 meses
Puntos: 3
Respuesta: Consulta de 2 o 3 tablas

Hola.

¿Has buscado información de la claúsula INNER JOIN?

Creo que sería la solución para lo que buscas.

Saludos.
  #3 (permalink)  
Antiguo 24/03/2009, 02:31
 
Fecha de Ingreso: septiembre-2004
Mensajes: 324
Antigüedad: 19 años, 8 meses
Puntos: 13
Respuesta: Consulta de 2 o 3 tablas

Cita:
Iniciado por epick Ver Mensaje
Hola, tengo el siguiente problema que me tiene loco, tengo las tablas ciudades {id, nombre}, vuelos {id, origen, destino} en las que como veis lo que quiero hacer es muy simple pero estoy vuelto un ..., simplemente quiero consultar los vuelos con su respectivas ciudades por ejemplo:

Tabla ciudades:
id nombre
1 Madrid
2 Valencia
3 Caracas

Tablas vuelos:
id origen destino
1 1 2
2 3 1
3 2 3

Ahora es hacer la consulta de la tabla vuelos y que me devuelva los registros

id origen destino
1 Madrid Valencia
2 Caracas Madrid

He estado haciendo este select pero nada

SELECT ciudades.nombre FROM vuelos, ciudades WHERE vuelos.origen = ciudades.id_ciudades and vuelos.destino = ciudades.id_ciudades

O si alguien me puede decir como implementar esto de una mejor forma, se los agradecere

Saludos
$sql = mysql_query("SELECT * FROM vuelos WHERE id='3'");
$sql = mysql_fetch_array($sql);
$origen = mysql_query("SELECT * FROM ciudades WHERE id='".$sql['origen']."'");
$destino = mysql_query("SELECT * FROM ciudades WHERE id='".$sql['destino']."'");


  #4 (permalink)  
Antiguo 24/03/2009, 22:51
 
Fecha de Ingreso: marzo-2009
Mensajes: 4
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Consulta de 2 o 3 tablas

Ya lo he solucionado con lo siguiente
SELECT t1.nombre, t2.nombre FROM vuelos, origen, destino, ciudades AS t1, ciudades AS t2
WHERE t1.id_ciudades = origen.id_origen AND
t2.id_ciudades = destino.id_destino AND
origen.id_origen = vuelos.id_origen AND
destino.id_destino = vuelos.id_destino

todo funciona bien el detalle es: como muesto en PHP dos campo del mismo nombre
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 16:47.