Mysql
 sql >> база данни >  >> RDS >> Mysql

Намиране на градове в рамките на „X“ километри (или мили)

Това е MySQL заявка, която ще направи точно това, което искате. Имайте предвид, че нещата като това са приблизителни като цяло, тъй като Земята не е идеално сферична, нито това взема предвид планини, хълмове, долини и т.н.. Ние използваме този код на AcademicHomes.com с PHP и MySQL връща записи в рамките на $radius мили от $latitude, $longitude.

$res = mysql_query("SELECT
    * 
FROM
    your_table
WHERE
    (
        (69.1 * (latitude - " . $latitude . ")) * 
        (69.1 * (latitude - " . $latitude . "))
    ) + ( 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3)) * 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3))
    ) < " . pow($radius, 2) . " 
ORDER BY 
    (
        (69.1 * (latitude - " . $latitude . ")) * 
        (69.1 * (latitude - " . $latitude . "))
    ) + ( 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3)) * 
        (69.1 * (longitude - " . $longitude . ") * COS(" . $latitude . " / 57.3))
    ) ASC");


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PERIOD_DIFF() Примери – MySQL

  2. XSD към MySQL схема

  3. Съвпадение на знака '%' при търсене в MySQL база данни

  4. MAMP PRO се срива; MySQL няма да стартира при рестартиране

  5. Възможно ли е да се вмъкне нов ред в горната част на MySQL таблицата?