このトピックでは、ST_Within関数について説明します。 この関数は、ジオメトリオブジェクトが別のジオメトリオブジェクトに含まれているかどうかを確認します。
構文
ブールST_Within (ジオメトリA、ジオメトリB);パラメーター
| パラメーター | 説明 |
| A | 指定する最初のジオメトリオブジェクト。 第1のジオメトリオブジェクトは、ジオメトリオブジェクトAと呼ばれる。 |
| B | 指定する2番目のジオメトリオブジェクト。 第2のジオメトリオブジェクトは、ジオメトリオブジェクトBと呼ばれる。 |
説明
- この関数で指定する2つのジオメトリオブジェクトは、同じ投影方法を使用し、同じ空間参照識別子 (SRID) を持つ必要があります。
- ST_Within(A,B) とST_Within(B,A) の両方がTrueを返す場合、ジオメトリオブジェクトAとジオメトリBは空間的に等しい。
- この関数はGeometryCollectionオブジェクトをサポートしません。
- この関数に無効なジオメトリオブジェクトを指定することはできません。 無効なジオメトリオブジェクトを指定した場合、この関数は誤った結果を返します。
- この関数は境界ボックスを生成し、指定したジオメトリオブジェクトで使用できるインデックスを使用できます。 インデックスを使用しない場合は、_ST_Within関数を使用することを推奨します。
例
SELECT ST_Within('POLYGON((1 1,1 2,2 1,1 1))': geometry,'POLYGON((0 0,0 2,2 0,0 0))'::geometry);
st_within
-----------
t
(1行)