- カテゴリ:
HAVERSINE¶
Haversine公式 を使って、地球表面の2点間の大圏距離をキロメートル単位で計算します。2点は緯度と経度を10進数で指定します。
注釈
Snowflakeでは、 HAVERSINE 関数の代わりに、 ST_DISTANCE 関数の使用を推奨しています。ST_DISTANCE 関数は、地理空間型の値を使用して計算を実行します。これにより、地理空間データを保存し、そのデータに対して 地理空間関数 を使用することができます。さらに、 ST_DISTANCE 関数を使用する結合述語は、 HAVERSINE 関数を使用する結合述語よりもパフォーマンスが良くなります。
構文¶
HAVERSINE( <lat1>, <lon1>, <lat2>, <lon2> )
引数¶
lat1
第1地点の緯度(10進角)。
lon1
第1地点の経度(10進角)。
lat2
第2地点の緯度(10進角)。
lon2
第2地点の経度(10進角)。
例¶
この関数は FLOAT型の値を返します。
例¶
次の例は、ニューヨークとロサンゼルス間の地理空間距離をキロメートル単位で返します。
SELECT HAVERSINE(40.7127, -74.0059, 34.0500, -118.2500) AS distance;
+----------------+
| DISTANCE |
|----------------|
| 3936.385096389 |
+----------------+