h3_pointash3
-Funktion
Gibt die H3-Zellen-ID (als BIGINT) zurück, die dem angegeben Punkt bei der angegebenen Auflösung entspricht.
Gilt für: Databricks SQL (Vorschau) Databricks Runtime 11.3 LTS und höher
Syntax
h3_pointash3 ( geographyExpr, resolutionExpr )
Argumente
geographyExpr
: Ein BINARY- oder STRING-Ausdruck, der eine Punktgeografie 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 zwischen0
und15
(einschließlich) erwartet wird und der die Auflösung für die H3-Zellen-ID angibt.
Gibt zurück
Gibt die H3-Zellen-ID (als BIGINT) zurück, die dem angegeben Punkt bei der angegebenen Auflösung entspricht.
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 Punkts ist. Wenn das erste Eingabeargument vom Typ STRING ist, wird erwartet, dass der Eingabewert entweder die WKT-Beschreibung (https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) oder die GeoJSON-Beschreibung eines Punkts ist. Die Dimension des Eingabepunkts kann 2D, 3DZ, 3DM oder 4D sein. Die Längen- und Breitengradwerte in der WKB-, WKT- oder GeoJSON-Beschreibung werden im WGS84-Koordinatenreferenzsystem erwartet. Die Funktion gibt NULL zurück, wenn die erste Eingabe einem leeren Punkt entspricht.
Fehlerbedingungen
- Wenn
geographyExpr
vom Typ BINARY ist und der Wert entweder eine ungültige WKB-Darstellung ist oder keinen Punkt darstellt, gibt die Funktion WKB_PARSE_ERROR zurück. - Wenn
geographyExpr
vom Typ STRING ist und der Wert entweder eine ungültige WKT-Darstellung ist oder keinen Punkt darstellt, gibt die Funktion WKT_PARSE_ERROR zurück. - Wenn
geographyExpr
vom Typ STRING ist und der Wert entweder eine ungültige GeoJSON-Darstellung ist oder keinen Punkt darstellt, gibt die Funktion GEOJSON_PARSE_ERROR zurück. - Wenn
resolutionExpr
kleiner als0
oder größer als15
ist, gibt die Funktion H3_INVALID_RESOLUTION_VALUE zurück.
Beispiele
-- Simple example.
> SELECT h3_pointash3('POINT(100 45)', 6)
604116085645508607
-- The H3 cell ID for the Golden Gate Bridge at resolution 13.
> SELECT h3_pointash3('POINT(-122.4783 37.8199)', 13)
635714569676958015
-- The function returns NULL if the input is the empty point.
> SELECT h3_pointash3('{"type":"Point","coordinates":[]}', 15)
null
-- Feeding a multipoint in WKT format instead of a point.
> SELECT h3_pointash3('MULTIPOINT(100 45)', 6)
[WKT_PARSE_ERROR] Error parsing WKT: Invalid or unsupported type 'MULTIPOINT' at position 1
-- Feeding an invalid GeoJSON string ("type" value is not correct).
> SELECT h3_pointash3('{"type":"POINT","coordinates":[]}', 15)
[GEOJSON_PARSE_ERROR] Error parsing GeoJSON: Invalid or unsupported type '"POINT"' at position 9
-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_pointash3(unhex('0201000000516b9a779c9e5ec0c5feb27bf2e84240'), 2)
[WKB_PARSE_ERROR] Error parsing WKB: Invalid byte order 2 at position 1
-- Resolution is out of range.
> SELECT h3_pointash3('POINT(-122.4783 37.8199)', 16)
[H3_INVALID_RESOLUTION_VALUE] H3 resolution 16 must be between 0 and 15, inclusive