STIntersection (geometry データ型)
適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Microsoft Fabric SQL Database
geometry インスタンスが別の geometry インスタンスと交差する地点を表すオブジェクトを返します。
構文
.STIntersection ( other_geometry )
引数
other_geometry
交差する地点を特定するために、STIntersection()
を呼び出したインスタンスと比較される、別の geometry インスタンスです。
戻り値の型
SQL Server の戻り値の型: geometry
CLR 戻り値の型: SqlGeometry
注釈
geometry インスタンスの SRID (spatial reference ID) が一致しない場合、STIntersection()
は常に null を返します。 結果に円弧が含まれるのは、入力インスタンスに円弧が含まれる場合のみです。
例
A. Polygon インスタンスで STIntersection() を使用する
STIntersection()
を使用して 2 つの多角形の交差部分を計算する例を次に示します。
DECLARE @g geometry;
DECLARE @h geometry;
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 0);
SET @h = geometry::STGeomFromText('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))', 0);
SELECT @g.STIntersection(@h).ToString();
B. CurvePolygon インスタンスで STIntersection() を使用する
次の例は、円弧が含まれたインスタンスを返します。
DECLARE @g geometry = 'CURVEPOLYGON (CIRCULARSTRING (0 -4, 4 0, 0 4, -4 0, 0 -4))';
DECLARE @h geometry = 'POLYGON ((1 -1, 5 -1, 5 3, 1 3, 1 -1))';
SELECT @h.STIntersection(@g).ToString();