Ver Mensaje Individual
  #8 (permalink)  
Antiguo 25/06/2014, 05:33
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: Consulta un tanto extraña...

Cita:
Iniciado por manolo_manolo Ver Mensaje
Hola Jurena, me has aclarado prácticamente todo, has dado en el clavo. Lo que necesitaba era el link de la función para calcular distancia entre dos puntos de coordenadas: http://www.tufuncion.com/distancia-coordenadas

Ahora ya puedo mostrar los que estén a X distancia de un punto.

No obstante, con lo que tengo es hacer la consulta, que me muestre todos los registros e ir calculando la distancia de todos los registros con php y filtrar sólo los que necesite. Pero creo que eso sería una auténtica locura en cuanto a consumo de recursos el operar con 8000 registros cada vez.

Lo ideal sería que la consulta mysql me devolviera sólo los resultados, u optimizarlo de alguna forma...
Eso ya es otra cosa...
La interacción entre la vista y los datos si es cosas de Ajax o PHP puro, pero si lo que quieres es una consulta masiva que te devuelva la distancia entre dos pares de coordenadas geográficas, cuyos valores están en una tabla de la base, eso es más sencillo de hacer. Aunque para ello deberás crear una stored function que se invoque directamente en la consulta.
Te recomiendo la SF y no una simple query, porque la sintaxis es algo complicada. Puedes verla en las FAQs de MySQL, porque este tema ya se ha tratado antes alli... varias veces.
¿Cómo calculo la distancia entre dos puntos geográficos (Lat/Long)?
Ahora bien, debes tener muy en cuenta que los cuatro parámetros de la SF deben ser si o si tipos de dato de punto flotante, con signo y según el estandar usado por ejemplo en Google Maps.
Con eso solo esa SF te devolverá la distancia directa en Km.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)