geo_point_to_geohash()
Vypočítá hodnotu řetězce geohash geografického umístění.
Přečtěte si další informace o geohash.
Syntax
geo_point_to_geohash(
Délky,
Šířky,
[ přesnost ])
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Typ | Vyžadováno | Popis |
---|---|---|---|
Délky | real |
✔️ | Geoprostorová souřadnice, hodnota zeměpisné délky ve stupních. Platná hodnota je reálné číslo v rozsahu [-180, +180]. |
zeměpisná šířka | real |
✔️ | Geoprostorová souřadnice, hodnota zeměpisné šířky ve stupních. Platná hodnota je reálné číslo v rozsahu [-90, +90]. |
Přesnost | int |
Definuje požadovanou přesnost. Podporované hodnoty jsou v rozsahu [1, 18]. Pokud není zadán, použije se výchozí hodnota 5 . |
Návraty
Řetězcová hodnota geohash daného geografického umístění s požadovanou délkou přesnosti. Pokud je souřadnice nebo přesnost neplatná, dotaz vytvoří prázdný výsledek.
Poznámka
- Geohash může být užitečný nástroj pro geoprostorový clustering.
- Geohash má 18 úrovní přesnosti s pokrytím v rozsahu od 25 milionů km² na nejvyšší úrovni 1 do 0,6 μ² na nejnižší úrovni 18.
- Společné předpony geohash označují blízkost bodů k sobě navzájem. Čím delší je sdílená předpona, tím blíže jsou dvě místa. Hodnota přesnosti se překládá na délku geohash.
- Geohash je obdélníková oblast na povrchu roviny.
- Vyvolání funkce geo_geohash_to_central_point() u řetězce geohash vypočítaného na základě zeměpisné délky x a zeměpisné šířky y nemusí nutně vrátit hodnoty x a y.
- Vzhledem k definici geohash je možné, že dvě geografické lokality jsou velmi blízko sebe, ale mají odlišné kódy geohash.
Obdélníkové pokrytí oblasti Geohash na hodnotu přesnosti:
Přesnost | Width (Šířka) | Height (Výška) |
---|---|---|
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,01 mm | 149,01 mm |
12 | 37,25 mm | 18,63 mm |
13 | 4,66 mm | 4,66 mm |
14 | 1,16 mm | 0,58 mm |
15 | 145.52 μ | 145.52 μ |
16 | 36.28 μ | 18.19 μ |
17 | 4.55 μ | 4.55 μ |
18 | 1.14 μ | 0.57 μ |
Viz také geo_point_to_s2cell(),geo_point_to_h3cell().
Porovnání s dalšími dostupnými systémy mřížky najdete v tématu geoprostorový clustering s dotazovací jazyk Kusto.
Příklady
Následující příklad najde události storm v USA agregované podle 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)
Výstup
Následující příklad vypočítá a vrátí hodnotu řetězce geohash.
print geohash = geo_point_to_geohash(-80.195829, 25.802215, 8)
Výstup
geohash |
---|
2015h |
Následující příklad vyhledá skupiny souřadnic. Každá dvojice souřadnic ve skupině se nachází v obdélníkové oblasti 4,88 km x 4,88 km.
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
Výstup
geohash | count | Umístění |
---|---|---|
c23n8 | 2 | ["A", "B"] |
c23n9 | 1 | ["C"] |
Následující příklad vytvoří prázdný výsledek kvůli neplatné souřadnici vstupu.
print geohash = geo_point_to_geohash(200,1,8)
Výstup
geohash |
---|
Následující příklad vytvoří prázdný výsledek kvůli neplatné přesnosti vstupu.
print geohash = geo_point_to_geohash(1,1,int(null))
Výstup
geohash |
---|
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro