ジオメトリオブジェクトの座標ディメンションを返します:`(X,Y)` の場合は 2、`(X,Y,Z)` または `(X,Y,M)` の場合は 3、`(X,Y,Z,M)` の場合は 4 です。この関数は 3D オブジェクトをサポートし、z 座標を保持します。
構文
integer ST_NDims(geometry g1);パラメーター
| パラメーター | 説明 |
|---|---|
g1 | 評価対象のジオメトリオブジェクトです。 |
使用例
以下のクエリでは、単一の呼び出しで各座標ディメンションに対応する戻り値を表示します:
SELECT
ST_NDims('POINT(0 1)'::geometry) AS d2point,
ST_NDims('POINT(0 1 2)'::geometry) AS d3point_z,
ST_NDims('POINTM(0 1 2)'::geometry) AS d3point_m,
ST_NDims('POINT(0 1 2 3)'::geometry) AS d4point;期待される出力:
d2point | d3point_z | d3point_m | d4point
---------+-----------+-----------+---------
2 | 3 | 3 | 4
(1 row)3DZ の POINT(x y z) と 3DM の POINTM(x y m) の両方とも、いずれも座標コンポーネントが 3 つあるため、戻り値は 3 となります。