geo_point_to_geohash()
지리적 위치의 geohash 문자열 값을 계산합니다.
geohash에 대해 자세히 알아보세요.
Syntax
geo_point_to_geohash(
경도,
위도,
[ 정확도 ])
구문 규칙에 대해 자세히 알아보세요.
매개 변수
이름 | 형식 | 필수 | Description |
---|---|---|---|
longitude | real |
✔️ | 지리 공간 좌표, 도의 경도 값입니다. 유효한 값은 실수이며 범위 [-180, +180]입니다. |
latitude | real |
✔️ | 지리 공간적 좌표, 위도 값(도)입니다. 유효한 값은 실수이며 범위 [-90, +90]입니다. |
정확도 | int |
요청된 정확도를 정의합니다. 지원되는 값은 [1, 18] 범위에 있습니다. 지정하지 않으면 기본값 5 이 사용됩니다. |
반환
요청된 정확도 길이를 가진 지정된 지리적 위치의 geohash 문자열 값입니다. 좌표 또는 정확도가 잘못된 경우 쿼리는 빈 결과를 생성합니다.
참고
- 지리 해시는 유용한 지리 공간적 클러스터링 도구일 수 있습니다.
- Geohash는 가장 높은 수준 1에서 2,500만 km²에서 가장 낮은 수준 18의 0.6 μ²에 이르는 영역 범위가 있는 18개 정확도 수준을 가지고 있습니다.
- 지오하시의 일반적인 접두사는 서로 지점의 근접성을 나타냅니다. 공유 접두사는 길수록 두 위치가 더 가깝습니다. 정확도 값은 지오하시 길이로 변환됩니다.
- Geohash는 평면 표면의 사각형 영역입니다.
- 경도 x 및 위도 y에서 계산된 지오하시 문자열에서 geo_geohash_to_central_point() 함수를 호출해도 x와 y가 반드시 반환되는 것은 아닙니다.
- 지오하시 정의로 인해 두 지리적 위치가 서로 매우 가깝지만 서로 다른 지오하시 코드가 있을 수 있습니다.
정확도 값당 Geohash 사각형 영역 범위:
정확도 | 너비 | 높이 |
---|---|---|
1 | 5000 km | 5000 km |
2 | 1250 km | 625 km |
3 | 156.25 km | 156.25 km |
4 | 39.06 km | 19.53 km |
5 | 4.88 km | 4.88 km |
6 | 1.22 km | 0.61 km |
7 | 152.59 m | 152.59 m |
8 | 38.15 m | 19.07 m |
9 | 4.77 m | 4.77 m |
10 | 1.19 m | 0.59 m |
11 | 149.01mm | 149.01mm |
12 | 37.25mm | 18.63mm |
13 | 4.66mm | 4.66mm |
14 | 1.16mm | 0.58mm |
15 | 145.52 μ | 145.52 μ |
16 | 36.28 μ | 18.19 μ |
17 | 4.55 μ | 4.55 μ |
18 | 1.14 μ | 0.57 μ |
geo_point_to_s2cell(), geo_point_to_h3cell()도 참조하세요.
사용 가능한 다른 그리드 시스템과 비교하려면 Kusto 쿼리 언어 있는 지리 공간적 클러스터링 참조하세요.
예제
다음 예제에서는 geohash로 집계된 미국 폭풍 이벤트를 찾습니다.
StormEvents
| project BeginLon, BeginLat
| summarize by hash=geo_point_to_geohash(BeginLon, BeginLat, 3)
| project geo_geohash_to_central_point(hash)
| render scatterchart with (kind=map)
출력
다음 예제에서는 geohash 문자열 값을 계산하고 반환합니다.
print geohash = geo_point_to_geohash(-80.195829, 25.802215, 8)
출력
geohash |
---|
dhwfz15h |
다음 예제에서는 좌표 그룹을 찾습니다. 그룹의 모든 좌표 쌍은 4.88km x 4.88km의 직사각형 영역에 상주합니다.
datatable(location_id:string, longitude:real, latitude:real)
[
"A", double(-122.303404), 47.570482,
"B", double(-122.304745), 47.567052,
"C", double(-122.278156), 47.566936,
]
| summarize count = count(), // items per group count
locations = make_list(location_id) // items in the group
by geohash = geo_point_to_geohash(longitude, latitude) // geohash of the group
출력
geohash | count | 위치 |
---|---|---|
c23n8 | 2 | ["A", "B"] |
c23n9 | 1 | ["C"] |
다음 예제에서는 잘못된 좌표 입력으로 인해 빈 결과를 생성합니다.
print geohash = geo_point_to_geohash(200,1,8)
출력
geohash |
---|
다음 예제에서는 잘못된 정확도 입력으로 인해 빈 결과를 생성합니다.
print geohash = geo_point_to_geohash(1,1,int(null))
출력
geohash |
---|
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기