次の方法で共有


STDistance (geography データ型)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Microsoft Fabric SQL Database

任意の geography インスタンスの地点と別の geography インスタンスの地点との最短距離を返します。

注意

STDistance() は、2 つの geography 型の間の最短の LineString を返します。 これは測地距離にほぼ一致します。 一般的な地球モデルの STDistance() の正確な測地距離からの偏差は 0.25% 以下です。 これにより、geodesic 型の長さと距離の間の微妙な違いに関する混乱が回避されます。

構文

  
.STDistance ( other_geography )  

引数

other_geography
STDistance() を呼び出したインスタンスまでの距離が測定される、別の geography インスタンスです。 other_geography が空のセットの場合、STDistance() は null を返します。

戻り値の型

SQL Server 戻り値の型: float

CLR の戻り値の型: SqlDouble

注釈

この結果は、空間データの SRID (Spatial Reference Identifier) によって定義された測定単位で表されます。 geography インスタンスの SRID (spatial reference ID) が一致しない場合、STDistance() は常に null を返します。

Note

面積や距離を計算する、geography データ型のメソッドの結果は、メソッドで使用されるインスタンスの SRID に応じて異なります。 SRID の詳細については、「SRID (Spatial Reference Identifier)」を参照してください。

2 つの geography インスタンスの間の距離を計算する例を次に示します。

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

参照

Geography インスタンスの OGC メソッド