El SELECT es:
Código MySQL:
Ver original
mercurio.recorrido_has_ciudad, mercurio.ciudad, mercurio.recorrido_has_calle, mercurio.calle, mercurio.recorrido_has_sector, mercurio.sector, mercurio.recorrido_has_lugar, mercurio.lugar WHERE mercurio.linea.id_linea = mercurio.recorrido.linea_id_linea mercurio.calle, mercurio.recorrido_has_sector, mercurio.sector, mercurio.recorrido_has_lugar, mercurio.lugar WHERE mercurio.linea.id_linea = mercurio.recorrido.linea_id_linea )
Lo anterior funciona sin problemas y retorna los valores que necesito cuando lo hago trabajar en el "PHPMYADMIN", como pueden ver aquí:
El problema se presenta a la hora de "migrar" esta consulta al PHP. En el caso de (mysql_fetch_array) que nos sirve para obtener las variables en muchos de los casos
no me responde o retorna nada, aquí el código:
Código PHP:
$sql2 = "SELECT DISTINCT mercurio.linea.nombre_linea, mercurio.recorrido.letra_recorrido FROM mercurio.linea, mercurio.recorrido,
mercurio.recorrido_has_ciudad, mercurio.ciudad, mercurio.recorrido_has_calle, mercurio.calle, mercurio.recorrido_has_sector,
mercurio.sector, mercurio.recorrido_has_lugar, mercurio.lugar WHERE mercurio.linea.id_linea = mercurio.recorrido.linea_id_linea
AND mercurio.recorrido.id_recorrido = mercurio.recorrido_has_ciudad.recorrido_id_recorrido AND mercurio.recorrido_has_ciudad.ciudad_id_ciudad =
(SELECT mercurio.ciudad.id_ciudad FROM mercurio.ciudad WHERE mercurio.ciudad.nombre_ciudad = 'Hualpén') AND mercurio.recorrido_has_calle.calle_id_calle =
(SELECT mercurio.calle.id_calle FROM mercurio.calle WHERE mercurio.calle.nombre_calle = 'Gibraltar') AND mercurio.recorrido_has_sector.sector_id_sector =
(SELECT mercurio.sector.id_sector FROM mercurio.sector WHERE mercurio.sector.nombre_sector = 'Diego Portales') AND mercurio.recorrido_has_lugar.lugar_id_lugar =
(SELECT mercurio.lugar.id_lugar FROM mercurio.lugar WHERE mercurio.lugar.nombre_lugar = 'ENAP') AND mercurio.linea.nombre_linea
IN ( SELECT DISTINCT mercurio.linea.nombre_linea FROM mercurio.linea, mercurio.recorrido, mercurio.recorrido_has_ciudad, mercurio.ciudad, mercurio.recorrido_has_calle,
mercurio.calle, mercurio.recorrido_has_sector, mercurio.sector, mercurio.recorrido_has_lugar, mercurio.lugar WHERE mercurio.linea.id_linea = mercurio.recorrido.linea_id_linea
AND mercurio.recorrido.id_recorrido = mercurio.recorrido_has_ciudad.recorrido_id_recorrido AND mercurio.recorrido_has_ciudad.ciudad_id_ciudad =
(SELECT mercurio.ciudad.id_ciudad FROM mercurio.ciudad WHERE mercurio.ciudad.nombre_ciudad = 'Talcahuano') AND mercurio.recorrido_has_calle.calle_id_calle =
(SELECT mercurio.calle.id_calle FROM mercurio.calle WHERE mercurio.calle.nombre_calle = 'Bilbao') AND mercurio.recorrido_has_sector.sector_id_sector =
(SELECT mercurio.sector.id_sector FROM mercurio.sector WHERE mercurio.sector.nombre_sector = 'Cerro la Gloria') AND mercurio.recorrido_has_lugar.lugar_id_lugar =
(SELECT mercurio.lugar.id_lugar FROM mercurio.lugar WHERE mercurio.lugar.nombre_lugar = 'ENAP')
)";
$result = mysql_query($sql2, $link);
if($result === FALSE) {
die(mysql_error()); // TODO: better error handling
}
while($row = mysql_fetch_array($result))
{
echo $row['nombre_linea'];
echo $row['letra_recorrido'];
}
Necesito su ayuda enormemente, es para mi tesis final y no logro hacer funcionar esta consulta con el PHP, reitero la lógica y sintaxis del "select" funciona correctamente en PHPMYADMIN consultado a la bbdd correspondiente. Creo que el drama puede estar en el IN() del select, o en los parentesis del SELECT completo. ALGUNA IDEA?¿
Saludos Colegas.