sql >> Databasteknik >  >> RDS >> Mysql

Beräknar avstånd mellan postnummer i PHP

Det här är Mikes svar med några kommentarer för de magiska siffrorna . Det verkade fungera bra för mig för vissa testdata :

function calc_distance($point1, $point2)
{
    $radius      = 3958;      // Earth's radius (miles)
    $deg_per_rad = 57.29578;  // Number of degrees/radian (for conversion)

    $distance = ($radius * pi() * sqrt(
                ($point1['lat'] - $point2['lat'])
                * ($point1['lat'] - $point2['lat'])
                + cos($point1['lat'] / $deg_per_rad)  // Convert these to
                * cos($point2['lat'] / $deg_per_rad)  // radians for cos()
                * ($point1['long'] - $point2['long'])
                * ($point1['long'] - $point2['long'])
        ) / 180);

    return $distance;  // Returned using the units used for $radius.
}


  1. Hur man aktiverar/inaktiverar CHECK-begränsningar i SQLite

  2. Så här använder du guiden Crosstab Query i Access

  3. Hur kan jag kombinera flera rader till en kommaavgränsad lista i SQL Server 2005?

  4. Använder SQL Server som en DB-kö med flera klienter