Udostępnij przez


STDistance (typ danych geograficznych)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Zwraca najkrótszą odległość między punktem w wystąpieniu geograficznym a punktem w innym wystąpieniu geograficznym .

Note

STDistance() Zwraca najkrótszy ciąg LineString między dwoma typami geograficznymi. Jest to zbliżona do odległości geodesowej. Odchylenie STDistance() od typowych modeli ziemi z dokładnej odległości geodesowej wynosi nie więcej niż 25%. Pozwala to uniknąć nieporozumień w przypadku subtelnych różnic między długością a odległością w typach geodesowych.

Syntax

  
.STDistance ( other_geography )  

Arguments

other_geography
Jest innym wystąpieniem geograficznym , z którego można zmierzyć odległość między wystąpieniem, na którym jest wywoływana funkcja STDistance(). Jeśli other_geography jest pustym zestawem, funkcja STDistance() zwraca wartość null.

Typy zwracane

Typ zwracany programu SQL Server: zmiennoprzecinkowe

Typ zwracany clR: SqlDouble

Remarks

Wynik jest wyrażony w jednostce miary zdefiniowanej przez identyfikator referencyjny przestrzenny (SRID) danych przestrzennych. Funkcja STDistance() zawsze zwraca wartość null , jeśli identyfikatory odwołań przestrzennych (SRID) wystąpień geograficznych nie są zgodne.

Note

Metody na typie danych geograficznych , które obliczają obszar lub odległość, będą zwracać różne wyniki na podstawie identyfikatora SRID wystąpienia użytego w metodzie . Aby uzyskać więcej informacji na temat identyfikatorów SRID, zobacz Identyfikatory odwołań przestrzennych (SRID).

Examples

W poniższym przykładzie znajduje się odległość między dwoma wystąpieniami geograficznymi .

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

Zobacz też

Metody OGC w wystąpieniach geograficznych