2016-10-01 4 views
-1

私は緯度と経度のテーブル名を持っているので、今はmysqlクエリの半径でデータを取得したいと思います。たとえば、緯度と経度のデータと場所の詳細を保存しました。これを得るための何か他の方法?私は緯度と経度のテーブル名を持っているので、今はmysqlクエリの半径でデータを取得したいのですか?

+0

[Haversineの式](http://stackoverflow.com/questions/574691/mysql-great-circle-distance-haversine-formula)を参照してください。実動環境でこのクエリを実行する予定がある場合は、データベース内の地理空間パーティションの使用を検討することもできます。 –

答えて

0
SELECT * FROM (SELECT * (6367*acos(cos(radians(input_lat)) 
    *cos(radians(database_latitude_col))*COS(radians(database_longitude_col)-radians(input_long)) 
    +SIN(radians(input_lat))*SIN(radians(database_latitude_col)))) 
    AS "distance" FROM table_name) distance where 
    distance < your_distance; 
関連する問題