Teilen über


STDistance (geography-Datentyp)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzSQL-Datenbank in Microsoft Fabric

Gibt die kürzeste Entfernung zwischen einem Punkt in einer geography -Instanz und einem Punkt in einer anderen geography -Instanz zurück.

Note

STDistance() gibt den kürzesten LineString zwischen zwei geography-Typen zurück. Dies ist ein naher Schätzwert der geodätische Entfernung. Die Abweichung von STDistance() bei allgemeinen Erdemodellen von der genauen geodätischen Entfernung beträgt nicht mehr als 0,25%. Dies verhindert Verwechslungen über die feinen Unterschiede zwischen Länge und Entfernung in geodätischen Typen.

Syntax

  
.STDistance ( other_geography )  

Arguments

other_geography
Eine andere geography-Instanz, von der aus die Entfernung zu der Instanz gemessen werden soll, in der STDistance() aufgerufen wird. Wenn other_geography leer ist, gibt STDistance() NULL zurück.

Rückgabetypen

SQL Server-Rückgabetyp: float

CLR-Rückgabetyp: SqlDouble

Remarks

Das Ergebnis wird in der Maßeinheit ausgedrückt, die der räumliche Verweisbezeichner (Spatial Reference Identifier, SRID) der räumlichen Daten festlegt. STDistance() gibt immer NULL zurück, wenn die SRIDs der geography-Instanzen nicht übereinstimmen.

Note

Methoden für den geography -Datentyp, mit denen eine Fläche oder eine Entfernung berechnet wird, geben abhängig vom SRID der in der jeweiligen Methode verwendeten Instanz unterschiedliche Ergebnisse zurück. Weitere Informationen über SRIDs finden Sie unter SRIDs (Spatial Reference Identifiers).

Examples

Im folgenden Beispiel wird der Abstand zwischen zwei geography -Instanzen gesucht.

DECLARE @g geography;  
DECLARE @h geography;  
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);  
SET @h = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);  
SELECT @g.STDistance(@h);  

Siehe auch

OGC-Methoden für geography-Instanzen