h3_try_polyfillash3string
-Funktion
Gilt für: Databricks SQL Databricks Runtime 11.3 LTS und höher
Verhält sich genauso wie h3_polyfillash3string, mit der Ausnahme, dass „NULL“ anstelle eines Fehlers zurückgegeben wird, wenn das erste Argument ungültig ist. Genauer gesagt, gibt es ein ARRAY von H3-Zellen-IDs (dargestellt als ZEICHENFOLGE) zurück, die Sechsecken oder Fünfecken der angegebenen Auflösung entsprechen, die in der Eingabebereichsgeografie enthalten sind.
Syntax
h3_try_polyfillash3string ( geographyExpr, resolutionExpr )
Argumente
geographyExpr
: Ein BINARY- oder STRING-Ausdruck, der eine geografische Fläche (Polygon oder Multipolygon) in WKB, WKT oder GeoJSON darstellt. Für die Geographie werden Längen- und Breitengrade erwartet, die auf WGS84-Koordinatenreferenzsystem verweisen.resolutionExpr
: Ein INT-Ausdruck, für den ein Wert zwischen 0 und einschließlich 15 erwartet wird, der die Auflösung für die H3-Zellen angibt.
Gibt zurück
Ein ARRAY von STRING-Werten, die den H3-Zellen-IDs der angegebenen Auflösung entsprechen, die in der Eingabegebietsgeographie enthalten sind.
Die Funktion gibt „NULL“ zurück, wenn einer der Eingabeausdrücke „NULL“ ist. Wenn das erste Eingabeargument vom Typ BINARY ist, wird erwartet, dass der Eingabewert die WKB-Beschreibung eines Polygons oder eines Multipolygons ist. Wenn das erste Eingabeargument vom Typ STRING ist, wird der Eingabewert entweder der WKT oder die GeoJSON-Beschreibung eines Polygons oder eines Multipolygons sein. Die Dimension des Eingabepolygons oder -multipolygons kann 2D, 3DZ, 3DM oder 4D sein. Die Funktion gibt NULL zurück, wenn das erste Argument einem ungültigen WKB, WKT oder GeoJSON entspricht oder kein Polygon oder Multipolygon darstellt.
Fehlerbedingungen
- Wenn
resolutionExpr
kleiner als0
oder größer als15
ist, gibt die Funktion H3_INVALID_RESOLUTION_VALUE zurück.
Beispiele
-- 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