sql >> Database teknologi >  >> RDS >> Mysql

haversine formel php / mysql

ikke sikker men :

$R = 6371; // radius of Earth in KM $lat = '46.98025235521883'; // lat of center point $lon = '-110.390625'; // longitude of center point $distance = 1000; // radius in KM of the circle drawn $rad = $distance / $R; // angular radius for query $query = ''; // rough cut to exclude results that aren't close $radR = rad2deg($rad/$R); $max_lat = $lat + radR; $min_lat = $lat - radR; $radR = rad2deg($rad/$R/cos(deg2rad($lat))); $max_lon = $lon + radR; $min_lon = $lon - radR; // this part works just fine! $query .= '(latitude > ' . $min_lat . ' AND latitude < ' . $max_lat . ')'; $query .= ' AND (longitude > ' . $min_lon . ' AND longitude < ' . $max_lon . ')'; // refining query -- this part returns no results $query .= ' AND acos(sin('.deg2rad($lat).') * sin(radians(latitude)) + cos('.deg2rad($lat).') * cos(radians(latitude)) * cos(radians(longitude) - ('.deg2rad($lon).'))) <= '.$rad;


  1. Unicode-tegn bliver til spørgsmålstegn efter indsættelse i databasen

  2. Fejl ved indstilling af egenskabsværdier; indlejret undtagelse er org.springframework.beans.NotWritablePropertyException:

  3. MONTHNAME() Eksempler – MySQL

  4. Vis "Ingen matches fundet" eller skjul DIV-resultater (AJAX &MySQL)