STDistance (geografidatatyp)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Returnerar det kortaste avståndet mellan en punkt i en geografiinstans och en punkt i en annan geografiinstans .

Note

STDistance() returnerar den kortaste LineString mellan två geografiska typer. Detta är nära det geodesiska avståndet. Avvikelsen för STDistance() på vanliga jordmodeller från det exakta geodesiska avståndet är inte mer än .25%. Detta undviker förvirring över de subtila skillnaderna mellan längd och avstånd i geodesiska typer.

Syntax

  
.STDistance ( other_geography )  

Arguments

other_geography
Är en annan geografiinstans som du kan mäta avståndet mellan den instans där STDistance() anropas. Om other_geography är en tom uppsättning returnerar STDistance() null.

Returtyper

SQL Server-returtyp: flyttal

CLR-returtyp: SqlDouble

Remarks

Resultatet uttrycks i måttenheten som definieras av spatial referensidentifierare (SRID) för rumsliga data. STDistance() returnerar alltid null om de rumsliga referens-ID:na (SRID) för geografiinstanserna inte matchar.

Note

Metoder för geografidatatypen som beräknar ett område eller avstånd returnerar olika resultat baserat på SRID för den instans som används i metoden. Mer information om SRID finns i Spatial Reference Identifiers (SRID).

Examples

I följande exempel hittas avståndet mellan två geografiska instanser.

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

Se även

OGC-metoder för geografiinstanser