fungsi to_geometry

Berlaku untuk:check ditandai ya pemeriksaan Databricks SQL ditandai ya Databricks Runtime 17.1 ke atas

Important

Fitur ini ada di Pratinjau Publik.

Nota

Fitur ini tidak tersedia di gudang Databricks SQL Classic. Untuk mempelajari selengkapnya tentang gudang Databricks SQL, lihat Jenis gudang SQL.

Mengurai deskripsi input geometri dan mengembalikan nilai yang GEOMETRY sesuai. Nilai SRID dari nilai yang dikembalikan GEOMETRY tergantung pada format input.

Syntax

to_geometry ( geoRepExpr )

Arguments

Returns

Nilai jenis GEOMETRY(ANY), sesuai dengan deskripsi geografi input.

Fungsi mengembalikan NULL jika input adalah NULL.

Kondisi kesalahan

  • Jika geoRepExpr berjenis BINARY dan nilainya adalah EWKB yang tidak valid, fungsi mengembalikan EWKB_PARSE_ERROR.
  • Jika geoRepExpr berjenis BINARY dan nilainya adalah EWKT yang tidak valid, fungsi mengembalikan EWKT_PARSE_ERROR.
  • Jika geoRepExpr berjenis BINARY dan nilainya adalah WKB yang tidak valid, fungsi mengembalikan WKB_PARSE_ERROR.
  • Jika geoRepExpr berjenis STRING dan nilainya adalah WKT yang tidak valid, fungsi mengembalikan WKT_PARSE_ERROR.
  • Jika geoRepExpr berjenis STRING dan nilainya adalah GeoJSON yang tidak valid, fungsi mengembalikan GEOJSON_PARSE_ERROR.

Examples

-- Input geometry is in WKT format.
> SELECT st_asgeojson(to_geometry('POINT Z (3 4 5)'));
  {"type":"Point","coordinates":[3,4,5]}

-- Input geometry is in GeoJSON format.
> SELECT st_astext(to_geometry('{"type":"Point","coordinates":[3,4,5]}'));
  POINT Z (3 4 5)

-- Input geometry is in WKB format.
> SELECT st_astext(to_geometry(X'0101000060110f0000000000000000084000000000000010400000000000001440'));
  POINT M (3 4 5)

-- Input geometry is in EWKB format.
> SELECT st_asewkt(to_geometry(X'01010000E0110F0000000000000000084000000000000010400000000000001440000000000000F0BF'));
  SRID=3857;POINT ZM (3 4 5 -1)

-- Input geometry is in EWKT format.
> SELECT concat_ws(';', st_srid(g)::STRING, st_asgeojson(g)) FROM (SELECT to_geometry('SRID=3857;POINT Z (3 4 5)') AS g);
  3857;{"type":"Point","coordinates":[3,4,5]}