Funktionen h3_try_polyfillash3string

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime 11.3 LTS och senare

Fungerar på samma sätt som h3_polyfillash3string, förutom att NULL returneras i stället för ett fel om det första argumentet är ogiltigt. Mer exakt returneras en matris av H3-cell-ID:er (representerade som string) som motsvarar sexhörningar eller pentagoner, med den angivna upplösningen, som omfattas av det angivna geografiska inputområdet.

Syntax

h3_try_polyfillash3string ( geographyExpr, resolutionExpr )

Argument

  • geographyExpr: Ett binärt uttryck eller STRING-uttryck som representerar ett arealgeografi (polygon eller multipolygon) i WKB, WKT eller GeoJSON. Geografin förväntas ha longitud- och latitudkoordinater i grader som refererar till WGS84-koordinatreferenssystemet .
  • resolutionExpr: Ett INT-uttryck, vars värde förväntas vara mellan 0 och 15 inklusive, som anger upplösningen för H3-cellerna.

Returer

En array av strängvärden som motsvarar H3-cell-ID:n, för en specificerad upplösning, som omfattas av den angivna arealgeografin.

Funktionen returnerar NULL om något av indatauttrycken är NULL. Om det första indataargumentet är av typen BINARY förväntas indatavärdet vara WKB-beskrivningen av en polygon eller en multipolygon. Om det första indataargumentet är av typen STRING förväntas indatavärdet antingen vara WKT- eller GeoJSON-beskrivningen för en polygon eller en multipolygon. Dimensionen för indatapogonen eller multipolygonen kan vara 2D, 3DZ, 3DM eller 4D. Funktionen returnerar NULL om det första argumentet motsvarar en ogiltig WKB, WKT eller GeoJSON eller inte representerar en polygon eller en multipolygon.

Feltillstånd

Exempel

-- Simple example where the input is a triangle in WKT format.
> SELECT h3_try_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 2);
  [82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]

-- Simple example where the input is a triangle in hexadecimal WKB format.
> SELECT h3_try_polyfillash3string(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 2);
  [82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]

-- The input is invalid.
> SELECT h3_try_polyfillash3string('Not-a-valid-rep', 2);
  null

-- Resolution is out of range.
> SELECT h3_try_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 16);
  [H3_INVALID_RESOLUTION_VALUE] H3 resolution 16 must be between 0 and 15, inclusive