35.76 SDO_UTIL.TO_GEOJSON

書式

SDO_UTIL.TO_GEOJSON(
     geometry  IN SDO_GEOMETRY 
     ) RETURN CLOB;

説明

SDO_GEOMETRYオブジェクトをGeoJSON形式のCLOB型のジオメトリに変換します。

パラメータ

geometry

GeoJSONオブジェクトに変換する、SDO_GEOMETRY形式のジオメトリ。

使用上のノート

Oracle Databaseに格納されているJSONデータの使用の詳細は、『Oracle Database JSON開発者ガイド』を参照してください。

GeoJSON形式のジオメトリをSDO_GEOMETRYオブジェクトに変換するには、SDO_UTIL.FROM_GEOJSONファンクションを使用します。

次の例では、JSON形式への変換と逆変換を示します。(例では、「空間データの挿入、索引付けおよび問合せの例」の特にCOLA_MARKETS表のcola_bジオメトリについて、その定義およびデータを使用しています。)

DECLARE
  cola_b_geom SDO_GEOMETRY;
  returned_geom SDO_GEOMETRY;
  returned_json CLOB;

BEGIN

-- Populate geometry variable with cola market cola_b shape.
SELECT c.shape into cola_b_geom FROM cola_markets c
  WHERE c.name = 'cola_b';

-- From geometry to JSON
returned_json := SDO_UTIL.TO_GEOJSON(cola_b_geom);

-- From JSON to geometry
returned_geom := SDO_UTIL.FROM_GEOJSON(returned_json);

END;
/

次の例では、指定したジオメトリを表すGeoJSONオブジェクトを示します。(この場合、ジオメトリ定義は、COLA_MARKETS表のcola_bジオメトリ(「空間データの挿入、索引付けおよび問合せの例」を参照)を反映します。)

SELECT SDO_UTIL.TO_GEOJSON(SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 1), SDO_ORDINATE_ARRAY(5, 1, 8, 1, 8, 6, 5, 7, 5, 1))) from DUAL;

SDO_UTIL.TO_GEOJSON(SDO_GEOMETRY(2003,NULL,NULL,SDO_ELEM_INFO_ARRAY(1,1003,1),SD
--------------------------------------------------------------------------------
{ "type": "Polygon", "coordinates": [ [ [5, 1], [8, 1], [8, 6], [5, 7], [5, 1] ]