geo_distance_2points()
Berechnet den kürzesten Abstand in Metern zwischen zwei Geokoordinaten auf der Erde.
Syntax
geo_distance_2points(
,
p1_longitude,
p1_latitude,
p2_longitudep2_latitude)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Typ | Erforderlich | BESCHREIBUNG |
---|---|---|---|
p1_longitude | real |
✔️ | Der Längengradwert in Grad der ersten Geokoordinate. Ein gültiger Wert liegt im Bereich [-180, +180]. |
p1_latitude | real |
✔️ | Der Breitengradwert in Grad der ersten Geokoordinate. Ein gültiger Wert liegt im Bereich [-90, +90]. |
p2_longitude | real |
✔️ | Der Längengradwert in Grad der zweiten Geokoordinate. Ein gültiger Wert liegt im Bereich [-180, +180]. |
p2_latitude | real |
✔️ | Der Breitengradwert in Grad der zweiten Geokoordinate. Ein gültiger Wert liegt im Bereich [-90, +90]. |
Gibt zurück
Die kürzeste Entfernung in Metern zwischen zwei geografischen Orten auf der Erde. Wenn die Koordinaten ungültig sind, erzeugt die Abfrage ein NULL-Ergebnis.
Hinweis
- Die georäumlichen Koordinaten werden so interpretiert, wie sie durch das Koordinatenreferenzsystem WGS-84 dargestellt werden.
- Das geodätische Datum, das zum Messen der Entfernung auf der Erde verwendet wird, ist eine Kugel.
Beispiele
Im folgenden Beispiel wird die kürzeste Entfernung zwischen Seattle und Los Angeles ermittelt.
print distance_in_meters = geo_distance_2points(-122.407628, 47.578557, -118.275287, 34.019056)
Ausgabe
distance_in_meters |
---|
1546754.35197381 |
Im folgenden Beispiel wird eine Näherung des kürzesten Pfads von Seattle nach London gefunden. Die Linie besteht aus Koordinaten entlang des LineStrings und innerhalb von 500 Metern entfernung.
range i from 1 to 1000000 step 1
| project lng = rand() * real(-122), lat = rand() * 90
| where lng between(real(-122) .. 0) and lat between(47 .. 90)
| where geo_distance_point_to_line(lng,lat,dynamic({"type":"LineString","coordinates":[[-122,47],[0,51]]})) < 500
| render scatterchart with (kind=map)
Ausgabe
Im folgenden Beispiel werden alle Zeilen ermittelt, in denen der kürzeste Abstand zwischen zwei Koordinaten zwischen einem Meter und 11 Metern liegt.
StormEvents
| extend distance_1_to_11m = geo_distance_2points(BeginLon, BeginLat, EndLon, EndLat)
| where distance_1_to_11m between (1 .. 11)
| project distance_1_to_11m
Ausgabe
distance_1_to_11m |
---|
10.5723100154958 |
7.92153588248414 |
Im folgenden Beispiel wird aufgrund der ungültigen Koordinateneingabe ein NULL-Ergebnis zurückgegeben.
print distance = geo_distance_2points(300,1,1,1)
Ausgabe
distance |
---|
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für