カテゴリ:

地理空間関数変換関数

ST_GEOMETRYFROMWKT

WKT(well-known text) または EWKT (拡張well-known text)入力を解析し、型 GEOMETRY の値を返します。

エイリアス:

ST_GEOMFROMWKT , ST_GEOMETRYFROMEWKT , ST_GEOMFROMEWKT , ST_GEOMETRYFROMTEXT , ST_GEOMFROMTEXT

こちらもご参照ください。

TO_GEOMETRY

構文

ST_GEOMETRYFROMWKT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

ST_GEOMFROMWKT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

ST_GEOMETRYFROMEWKT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

ST_GEOMFROMEWKT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

ST_GEOMETRYFROMTEXT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )

ST_GEOMFROMTEXT( <varchar_expression> [ , <srid> ] [ , <allow_invalid> ] )
Copy

引数

必須:

varchar_expression

引数は、有効な地理空間オブジェクトを表す WKT または EWKT の文字列式である必要があります。

オプション:

srid

使用する SRID の整数値。

allow_invalid

TRUE の場合、入力形状が無効で修復できない場合でも、関数が GEOGRAPHY または GEOMETRY オブジェクトを返す必要があることを指定します。詳細については、 無効な地理空間形状の処理方法の指定 をご参照ください。

戻り値

この関数は、 GEOMETRY 型の値を返します。

使用上の注意

  • 入力が WKT または EWKT として解析できない場合は、エラーを発行します。

  • WKT 入力の場合は、 srid 引数が指定されていないと、結果の GEOMETRY オブジェクトの SRID は 0 に設定されます。

次の例は、EWKT 形式内で説明された地理空間オブジェクトに対して、GEOMETRY オブジェクトを返します。

-- Set the output format to EWKT
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';

SELECT ST_GEOMETRYFROMEWKT('SRID=32633;POINT(389866.35 5819003.03)');
Copy
+---------------------------------------------------------------+
| ST_GEOMETRYFROMEWKT('SRID=32633;POINT(389866.35 5819003.03)') |
|---------------------------------------------------------------|
| SRID=32633;POINT(389866.35 5819003.03)                        |
+---------------------------------------------------------------+

次の例は、 EWKT 形式内で説明されたZ座標のある地理空間オブジェクトに対して GEOMETRY オブジェクトを返します。

-- Set the output format to EWKT
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';

SELECT ST_GEOMETRYFROMEWKT('SRID=32633;POINTZ(389866.35 5819003.03 30)');
Copy
+-------------------------------------------------------------------+
| ST_GEOMETRYFROMEWKT('SRID=32633;POINTZ(389866.35 5819003.03 30)') |
|-------------------------------------------------------------------|
| SRID=32633;POINTZ(389866.35 5819003.03 30)                        |
+-------------------------------------------------------------------+

次の例では、入力は WKT 形式であり、関数呼び出しで使用する SRID が指定されています。

-- Set the output format to EWKT
ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='EWKT';

SELECT ST_GEOMETRYFROMWKT('POINT(389866.35 5819003.03)', 4326);
Copy
+----------------------------------------------------------+
| ST_GEOMETRYFROMWKT('POINT(389866.35 5819003.03)', 4326)  |
|----------------------------------------------------------|
| SRID=4326;POINT(389866.35 5819003.03)                    |
+----------------------------------------------------------+