geodist()
두 지리 좌표 간의 거리를 계산합니다. Haversine 공식을 사용하여 구면 거리를 계산합니다.
문법
geodist(LAT1, LON1, LAT2, LON2[, UNIT])
매개변수
LAT1- 첫 번째 지점의 위도(도 단위). 숫자 타입이어야 합니다.
LON1- 첫 번째 지점의 경도(도 단위). 숫자 타입이어야 합니다.
LAT2- 두 번째 지점의 위도(도 단위). 숫자 타입이어야 합니다.
LON2- 두 번째 지점의 경도(도 단위). 숫자 타입이어야 합니다.
UNIT- 거리 단위 문자열.
"km"(킬로미터),"mile"또는"mi"(마일),"nmile"(해리) 중 하나를 지정합니다. 생략하면 킬로미터("km")로 계산합니다.
설명
geodist() 함수는 위도·경도 좌표 두 쌍을 받아 두 지점 사이의 거리를 반환합니다. 지구 반지름을 6378km로 가정한 Haversine 공식으로 거리를 계산하며, 결과 타입은 64비트 실수입니다.
매개변수 중 하나라도 숫자 타입이 아니거나 null이면 null을 반환합니다.
오류 코드
| 오류 코드 | 설명 |
|---|---|
| 91040 | 지원하지 않는 단위 문자열을 지정한 경우 |
사용 예
-
두 지점 사이의 거리를 기본 단위(km)로 계산합니다.
json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503) | # d: 1150.6201676325247 -
마일 단위로 거리를 계산합니다.
json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503, "mile") | # d: 714.9622253741429 -
해리 단위로 거리를 계산합니다.
json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503, "nmile") | # d: 621.2851877065468 -
NULL 입력
json "{}" | eval d = geodist(null, 126.9780, 35.6762, 139.6503) | # d: null
호환성
geodist() 함수는 소나 4.0 이전 버전부터 제공되었습니다.