Condividi tramite


Funzione h3_try_polyfillash3

Si applica a: segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime 11.3 LTS e versioni successive

Si comporta come h3_polyfillash3, ad eccezione del fatto che viene restituito NULL anziché un errore se il primo argomento non è valido. Più precisamente, restituisce una MATRICE di ID cella H3 (rappresentati come BIGINT) corrispondenti agli esagoni o ai pentagoni, della risoluzione specificata, contenuti nell'area geografica dell'input.

Sintassi

h3_try_polyfillash3 ( geographyExpr, resolutionExpr )

Argomenti

  • geographyExpr: espressione BINARY o STRING che rappresenta un'area geografica areale (poligono o multipolygon) in WKB, WKT o GeoJSON. La geografia dovrebbe avere coordinate di longitudine e latitudine in gradi che fanno riferimento al sistema di riferimento delle coordinate WGS84 .
  • resolutionExpr: espressione INT, il cui valore deve essere compreso tra 0 e 15 inclusi, specificando la risoluzione per le celle H3.

Valori restituiti

Matrice di valori BIGINT corrispondenti agli ID cella H3, della risoluzione specificata, contenuti nell'area geografica dell'input.

La funzione restituisce NULL se una qualsiasi delle espressioni di input è NULL. Se il primo argomento di input è di tipo BINARY, si prevede che il valore di input sia la descrizione WKB di un poligono o un multipolygon. Se il primo argomento di input è di tipo STRING, il valore di input deve essere WKT o la descrizione GeoJSON di un poligono o un multipolygon. La dimensione del poligono di input o multipolygon può essere 2D, 3DZ, 3DM o 4D. La funzione restituisce NULL se il primo argomento corrisponde a un WKB, WKT o GeoJSON non valido o non rappresenta un poligono o un multipolygon.

Condizioni di errore

Esempi

-- Simple example where the input is a triangle in WKT format.
> SELECT h3_try_polyfillash3('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 2)
  [586146350232502271,586147449744130047,586198577034821631,586152397546455039,586199676546449407,586153497058082815,586142501941805055,586201325813891071]

-- Simple example where the input is a triangle in hexadecimal WKB format.
> SELECT h3_try_polyfillash3(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 2)
  [586146350232502271,586147449744130047,586198577034821631,586152397546455039,586199676546449407,586153497058082815,586142501941805055,586201325813891071]

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

-- Resolution is out of range.
> SELECT h3_try_polyfillash3('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