Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

tìm các bản ghi với vĩ độ và kinh độ

Bạn phải sử dụng một cái gì đó như thế này để có được kết quả gần nhất với một vị trí nhất định

$query = sprintf(
         "SELECT foo,
                  6371 * ACOS( Cos(RADIANS(lat)) * COS(RADIANS(%f))
                      * COS(RADIANS(%f) - RADIANS(lng)) + SIN(RADIANS(lat))
                      * SIN(RADIANS(%f)) ) * 1000 AS distance
            FROM `%s`
        ORDER BY distance",
        $lat, $lag, $lng, $table
    );

Bạn phải đặt $lat , $lng$table theo cấu trúc bảng của bạn và có thể đặt giới hạn cho kết quả.

Bạn nhận được giải thích chi tiết tại đây Tìm kiếm khoảng cách địa lý với MySQL .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cấu trúc truy vấn để tạo bảng

  2. xóa nơi id là lớn nhất

  3. SQL:CẬP NHẬT từ một lựa chọn phức tạp

  4. Cách nhanh nhất để duyệt qua bảng lớn bằng JDBC

  5. Nhập bảng lớn MySQL