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지원하지 않는 단위 문자열을 지정한 경우

사용 예

  1. 두 지점 사이의 거리를 기본 단위(km)로 계산합니다.

    json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503)
    | # d: 1150.6201676325247
    
  2. 마일 단위로 거리를 계산합니다.

    json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503, "mile")
    | # d: 714.9622253741429
    
  3. 해리 단위로 거리를 계산합니다.

    json "{}" | eval d = geodist(37.5665, 126.9780, 35.6762, 139.6503, "nmile")
    | # d: 621.2851877065468
    
  4. NULL 입력

    json "{}" | eval d = geodist(null, 126.9780, 35.6762, 139.6503)
    | # d: null
    

호환성

geodist() 함수는 소나 4.0 이전 버전부터 제공되었습니다.