カテゴリ:

地理空間関数

ST_ASWKT , ST_ASTEXT

GEOGRAPHY または GEOMETRY 型の値を指定すると、その値のテキスト(VARCHAR)表現を WKT (well-known text) 形式で返します。

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

ST_ASEWKT

構文

次のいずれかを使用します。

ST_ASWKT( <geography_or_geometry_expression> )

ST_ASTEXT( <geography_or_geometry_expression> )
Copy

引数

geography_or_geometry_expression

引数は型 GEOGRAPHY または GEOMETRY の式にする必要があります。

戻り値

VARCHAR。

使用上の注意

  • ST_ASTEXT は、 ST_ASWKT のエイリアスです。

  • 出力を EWKT 形式で返すには、代わりに ST_ASEWKT を使用します。

GEOGRAPHY 例

次の例は、 ST_ASWKT 関数を示しています。

create table geospatial_table (id INTEGER, g GEOGRAPHY);
insert into geospatial_table values
    (1, 'POINT(-122.35 37.55)'), (2, 'LINESTRING(-124.20 42.00, -120.01 41.99)');
Copy
select st_astext(g)
    from geospatial_table
    order by id;
+-------------------------------------+
| ST_ASTEXT(G)                        |
|-------------------------------------|
| POINT(-122.35 37.55)                |
| LINESTRING(-124.2 42,-120.01 41.99) |
+-------------------------------------+
Copy
select st_aswkt(g)
    from geospatial_table
    order by id;
+-------------------------------------+
| ST_ASWKT(G)                         |
|-------------------------------------|
| POINT(-122.35 37.55)                |
| LINESTRING(-124.2 42,-120.01 41.99) |
+-------------------------------------+
Copy

GEOMETRY 例

次の例は、 ST_ASEWKT 関数の使用方法を示しています。この例は、2つのジオメトリの EWKT 表現を返します。

CREATE OR REPLACE TABLE geometry_table (g GEOMETRY);
INSERT INTO geometry_table VALUES
  ('POINT(-122.35 37.55)'), ('LINESTRING(0.75 0.75, -10 20)');

ALTER SESSION SET GEOMETRY_OUTPUT_FORMAT='WKT';
SELECT ST_ASWKT(g) FROM geometry_table;
Copy
+------------------------------+
| ST_ASWKT(G)                  |
|------------------------------|
| POINT(-122.35 37.55)         |
| LINESTRING(0.75 0.75,-10 20) |
+------------------------------+
Copy