2つの緯度/経度を指定した場合、それらが互いに1マイル以内にあるかどうかをどのように確認できますか?
2つのポイントが互いに1マイル以内にあるかどうかを確認する非常に効率的なチェックを実装しようとしています。 私の現在のアプローチは、Haversine距離を計算し、それが1マイル未満かどうかを確認することです。 大きなレコードセットの場合は、このyes / noフラグを計算する必要があるため、この場合は効率が重要になります。 私はそれらが1マイル以内にあるかどうかだけを気にします -距離については何も私には関係ありません。 それでは、2つの緯度/経度のポイントが互いに1マイル以内にあるかどうかを確認する最も効率的な方法は何ですか? コメントに応えて、私はSQL Serverでこれを行っています。私のコードは以下です。 CREATE FUNCTION dbo.USR_UFN_HAVERSINE_DISTANCE ( @LAT1 FLOAT(18) ,@LONG1 FLOAT(18) ,@LAT2 FLOAT(18) ,@LONG2 FLOAT(18) ,@UnitOfMeasure NVARCHAR(10) = 'KILOMETERS' ) RETURNS FLOAT(18) AS BEGIN DECLARE @R FLOAT(8) ,@DLAT FLOAT(18) ,@DLON FLOAT(18) ,@A FLOAT(18) ,@C FLOAT(18) ,@D FLOAT(18) ; SET @R = CASE @UnitOfMeasure …