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

Làm thế nào để tăng tốc công thức Haversine trong mysql?

tại sao bạn đang CÓ ... do thực tế là truy vấn của bạn không sử dụng chức năng tổng hợp để bạn có thể lọc uing ở đâu (nhưng nơi không sử dụng, bạn phải viết lại mã) và để đạt được hiệu suất bằng cách tránh quét toàn bộ để đánh giá lại kết quả để có đánh giá

  $query = $mysqli->query("SELECT postcode, (
        6371 * acos (
        cos ( radians('$latitude') )
        * cos( radians( lat ) )
        * cos( radians( lng ) - radians('$longitude') )
        + sin ( radians('$latitude') )
        * sin( radians( lat ) )
      )
  ) AS distance
  FROM postcodetabel
  WHERE    6371 * acos (
        cos ( radians('$latitude') )
        * cos( radians( lat ) )
        * cos( radians( lng ) - radians('$longitude') )
        + sin ( radians('$latitude') )
        * sin( radians( lat ) ) )< 12
  ORDER BY distance 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. Truy vấn MySQL để tìm kiếm một trường với chuỗi JSON

  2. Cách tắt kiểm tra khóa ngoại trong MySQL

  3. mysqldump:Không thể thực thi. Bảng không xác định 'cột_thống kê' trong information_schema

  4. Một cách hiệu quả để lưu Mảng và các Khóa của nó vào cơ sở dữ liệu

  5. Viết một truy vấn kế thừa được viết bằng SQL bằng cách sử dụng một phép nối bên trong?