GEOMETRY tür

Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 17.1 ve üzeri

Koordinat başvuru sistemi birinci (X) ve ikinci (Y) koordinatları için Öklid olan geometrik nesneyi (nokta, çizgi, çokgen vb.) ve varsa Z koordinatlarını temsil eder. Temel alınan koordinat başvuru sistemi, GEOMETRY türünün SRID değeri ile açıklanmıştır. Altyapı koordinat referans sistemi bilinmiyorsa, değer 0 kullanılır. X, Y ve isteğe bağlı olarak Z koordinatlarının birimleri, SRID tarafından belirtilen birimlerdir (SRID değeri 0 olduğunda, bu durumda hangi birimlerin kullanılacağı kullanıcının kullanım bağlamına bağlıdır).

Note

GEOMETRY sütunlar, ölçüm görünümlerinde veya Lakeflow işlem hatlarında boyut olarak desteklenmez çünkü bu bağlamlar şu anda jeo-uzamsal verilerin sağlamadığı destek gerektirir GROUP BY . Ölçüm görünümünde jeo-uzamsal verileri kullanmak için sütunu boyut yerine ölçü olarak ekleyin.

Syntax

GEOMETRY ( { srid | ANY } )

Limits

Türünde GEOMETRY(ANY) bir sütun, SRID değerleri satır başına farklı olabilecek geometrileri barındırabilir. Türünde GEOMETRY(ANY) bir sütun kalıcı olamaz.

Yaklaşık 11000 SRID değeri desteklenir. SRID hakkında daha fazla bilgi edinin. Kullanıcı desteklenmeyen SRID değerine sahip bir sütun tanımlamaya çalışırsa GEOMETRY hatası alır.

Literals

GEOMETRY değeri nasıl oluşturulacağı hakkında detaylı bilgi için bkz:

Notes

  • Bir GEOMETRY değeri jeo-uzamsal standart veya yaygın olarak kullanılan biçimlerden birine dönüştürmek için aşağıdakileri kullanabilirsiniz:

Examples

> SELECT hex(st_asbinary(st_geomfromtext('POINT(1 2)')));
  0101000000000000000000f03f0000000000000040

> SELECT st_asewkt(st_geomfromwkb(X'0101000000000000000000f03f0000000000000040'));
  POINT(1 2)

> SELECT st_asgeojson(st_geomfromtext('POINT(1 2)'));
  {"type":"Point","coordinates":[[1,2]]}

> SELECT st_astext(st_geomfromgeojson('{"type":"Point","coordinates":[[1,2]]}'));
  POINT(1 2)

> SELECT st_astext(to_geometry('{"type":"Point","coordinates":[[1,2]]}'));
  POINT(1 2)

> SELECT try_to_geometry('not a geometry value');
  NULL