書式
SDO_LRS.VALID_MEASURE( geom_segment IN SDO_GEOMETRY, measure IN NUMBER ) RETURN VARCHAR2;
または
SDO_LRS.VALID_MEASURE( geom_segment IN SDO_GEOMETRY, dim_array IN SDO_DIM_ARRAY, measure IN NUMBER ) RETURN VARCHAR2;
説明
メジャーがジオメトリ・セグメントのメジャー範囲内かどうかを確認します。
パラメータ
measure
のメジャー範囲内にあるかどうかを確認するジオメトリ・セグメントを指定します。
geom_segment
に対応する次元情報の配列を指定します。通常、xxx_SDO_GEOM_METADATAビューの1つから選択します(「ジオメトリのメタデータ・ビュー」を参照)。
geom_segment
のメジャー範囲内にあるかどうかを確認するメジャー値を指定します。
使用上の注意
このファンクションは、measure
がgeom_segment
のメジャー範囲内にある場合は、TRUEを戻します。また、measure
がgeom_segment
のメジャー範囲外にある場合は、FALSEを戻します。
geom_segment
に無効なジオメトリ・タイプまたは次元が含まれる場合、例外が発生します。
このファンクションは_3D 形式(SDO_LRS.VALID_MEASURE_3D)が使用可能です。LRSファンクションの3D形式については、「LRSファンクションの3D形式」を参照してください。
例
次の例では、50がRoute 1セグメント上で有効なメジャーであるかどうかを確認します。このセグメントのメジャー範囲は0から27であるため、このファンクションはFALSEを戻します。たとえば、長さが27マイルで1マイルごとにマークが付いた道路では、最後のマークは27マイルのマークであるため、50マイルのマークはありません。(例では、「LRSファンクションの例」の例の定義を使用しています。)
SELECT SDO_LRS.VALID_MEASURE(route_geometry, 50) FROM lrs_routes WHERE route_id = 1; SDO_LRS.VALID_MEASURE(ROUTE_GEOMETRY,50) -------------------------------------------------------------------------------- FALSE