Freigeben über


STDistance (geography-Datentyp)

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

HinweisHinweis

STDistance() gibt den kürzesten LineString zwischen zwei Geografietypen 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 )

Argumente

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

Rückgabetypen

SQL Server Rückgabetyp: float

CLR-Rückgabetyp: SqlDouble

Hinweise

STDistance() gibt immer NULL zurück, wenn die SRIDs (Spatial Reference IDs) der geography-Instanzen nicht übereinstimmen.

HinweisHinweis

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).

Beispiele

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

Andere Ressourcen

OGC-Methoden für geography-Instanzen