Ver Mensaje Individual
  #4  
Viejo 11/10/12, 16:48:30
Avatar de RubenGM85
RubenGM85 RubenGM85 no está en línea
Miembro del foro
Mensajes: 435
 
Fecha de registro: mar 2010
Localización: Girona
Mensajes: 435
Modelo de smartphone: LG Nexus 5
Versión de ROM: Stock
Tu operador: Vodafone
Mencionado: 5 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por superroko2 Ver Mensaje
2.2) Como puedo obtener esas cuatro localizaciones más cercanas? He hecho consultas básicas en SQL con una o varias tablas, y cosillas del estilo (UPDATE, SELECT, DELETE, etc), pero para encontrar las cuatro localizaciones más cercanas en una BD que puede tener 1000 o 10000 localizaciones, como podría conseguirlo?
Si tienes latitud y longitud (en 1E6, como le gusta a Google):

$query = "SELECT *, ((ACOS(SIN(($lat / 1000000) * PI() / 180) * SIN((location_lat / 1000000) * PI() / 180) + COS(($lat / 1000000) * PI() / 180) * COS((location_lat / 1000000) * PI() / 180) * COS((($lon / 1000000) - (location_lon / 1000000)) * PI() / 180)) * 180 / PI()) * 60 * 1.853159616) AS `distance` FROM `tabla` ORDER BY `distance` ASC LIMIT 4";
Responder Con Cita