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

Bán kính 40 km sử dụng vĩ độ và kinh độ

Tôi sử dụng truy vấn này để lấy tất cả các điểm trong $radius khoảng $lat / $lng :

SELECT
    *,
    ( 6371 * acos( cos( radians({$lat}) ) * cos( radians( `lat` ) ) * cos( radians( `lng` ) - radians({$lng}) ) + sin( radians({$lat}) ) * sin( radians( `lat` ) ) ) ) AS distance
FROM `positions`
HAVING distance <= {$radius}
ORDER BY distance ASC

6371 là bán kính trái đất im km. Và tôi chưa phát minh ra nó: http:/ /code.google.com/intl/vi/apis/maps/articles/phpsqlsearch.html https://developers.google.com/maps/articles/phpsqlsearch_v3#findnearsql (chỉnh sửa:URL đã thay đổi)




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể tìm thấy mục sản lượng MySQL IFNULL N / A trong bộ sưu tập Lỗi

  2. Làm thế nào để có được kích thước thực của cơ sở dữ liệu MySQL?

  3. Xác định một biến trong vùng chọn và sử dụng nó trong cùng một vùng chọn

  4. MySQL so sánh now () (chỉ ngày, không phải giờ) với trường datetime

  5. Cách tìm nạp trường từ kết quả truy vấn MySQL trong bash