ST_POLYGON
概要
WKT(Well-Known Text)形式の文字列をメモリ内のPolygon幾何オブジェクトに変換します。
エイリアス
- st_polygonfromtext
- st_polyfromtext
構文
ST_POLYGON( <wkt>)
パラメータ
| Parameter | デスクリプション |
|---|---|
<wkt> | POLYGON関数によって生成されたポリゴンのWKTテキスト |
戻り値
Polygonタイプのジオメトリオブジェクトを返します。これはDorisの内部空間データフォーマットでメモリに格納され、他の空間関数(ST_AREA、ST_CONTAINSなど)のパラメータとして直接渡して計算することができます。
- 入力WKT文字列が無効な場合(例:閉じていないリング、構文エラー)、NULLを返します。
- 入力
がNULLまたは空文字列の場合、NULLを返します。
例
基本的なポリゴン
SELECT ST_AsText(ST_Polygon("POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0))"));
+------------------------------------------------------------------+
| st_astext(st_polygon('POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0))')) |
+------------------------------------------------------------------+
| POLYGON ((0 0, 10 0, 10 10, 0 10, 0 0)) |
+------------------------------------------------------------------+
自己交差ポリゴン(無効)
mysql> select st_polygon('POLYGON ((0 0, 1 1, 0 1, 1 0, 0 0))');
+---------------------------------------------------+
| st_polygon('POLYGON ((0 0, 1 1, 0 1, 1 0, 0 0))') |
+---------------------------------------------------+
| NULL |
+---------------------------------------------------+
無効なWKT(未閉鎖のリング)
mysql> SELECT ST_Polygon("POLYGON ((0 0, 10 0, 10 10, 0 10))");
+--------------------------------------------------+
| ST_Polygon("POLYGON ((0 0, 10 0, 10 10, 0 10))") |
+--------------------------------------------------+
| NULL |
+--------------------------------------------------+
無効なWKT(構文エラー)
mysql> SELECT ST_Polygon("POLYGON (0 0, 10 0, 10 10, 0 10, 0 0)");
+-----------------------------------------------------+
| ST_Polygon("POLYGON (0 0, 10 0, 10 10, 0 10, 0 0)") |
+-----------------------------------------------------+
| NULL |
+-----------------------------------------------------+
入力がNULL
mysql> SELECT ST_Polygon(NULL);
+------------------+
| ST_Polygon(NULL) |
+------------------+
| NULL |
+------------------+