funktion to_geometry

Gäller för:check markerad ja Databricks SQL-kontroll markerad ja Databricks Runtime 17.1 och senare

Important

Den här funktionen finns som allmänt tillgänglig förhandsversion.

Anmärkning

Den här funktionen är inte tillgänglig på de klassiska Databricks SQL-lagerhus. Mer information om Databricks SQL-lager finns i SQL-lagertyper.

Parsar indatabeskrivningen för en geometri och returnerar motsvarande GEOMETRY värde. SRID-värdet för det returnerade GEOMETRY värdet beror på indataformatet.

Syntax

to_geometry ( geoRepExpr )

Arguments

  • geoRepExpr: Ett BINARY eller STRING -uttryck som representerar en geometri i WKB, WKT, GeoJSON eller Extended WKB (EWKB).

Returns

Ett värde av typen GEOMETRY(ANY), som motsvarar beskrivningen av indatageografin.

Funktionen returnerar NULL om indata är NULL.

Feltillstånd

  • Om geoRepExpr är av typen BINARY och värdet är en ogiltig EWKB returnerar funktionen EWKB_PARSE_ERROR.
  • Om geoRepExpr är av typen BINARY och värdet är en ogiltig WKB returnerar funktionen WKB_PARSE_ERROR.
  • Om geoRepExpr är av typen STRING och värdet är en ogiltig WKT returnerar funktionen WKT_PARSE_ERROR.
  • Om geoRepExpr är av typen STRING och värdet är ogiltigt GeoJSON returnerar funktionen 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)