Funktionen h3_pointash3
Returnerar det H3-cell-ID (som bigint) som motsvarar den angivna punkten vid den angivna upplösningen.
Gäller för: Databricks SQL preview Databricks Runtime 11.3 LTS och senare
Syntax
h3_pointash3 ( geographyExpr, resolutionExpr )
Argument
geographyExpr
: Ett BINÄRt uttryck eller STRING-uttryck som representerar ett punktgeografi 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 mellan0
och15
inkluderande, som anger upplösningen för H3-cell-ID:t.
Returer
Returnerar det H3-cell-ID (som bigint) som motsvarar den angivna punkten vid den angivna upplösningen.
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 punkt. Om det första indataargumentet är av typen STRING förväntas indatavärdet antingen vara WKT](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) eller GeoJSON-beskrivningen av en punkt. Indatapunktens dimension kan vara 2D, 3DZ, 3DM eller 4D. Longitud- och latitudvärdena i WKB-, WKT- eller GeoJSON-beskrivningen förväntas finnas i WGS84-koordinatreferenssystemet. Funktionen returnerar NULL om den första indatan motsvarar den tomma punkten.
Feltillstånd
- Om
geographyExpr
är av typen BINÄR och värdet antingen är en ogiltig WKB eller inte representerar en punkt, returnerar funktionen WKB_PARSE_ERROR. - Om
geographyExpr
är av typen STRING och värdet antingen är en ogiltig WKT eller inte representerar en punkt, returnerar funktionen WKT_PARSE_ERROR. - Om
geographyExpr
är av typen STRING och värdet antingen är en ogiltig GeoJSON eller inte representerar en punkt, returnerar funktionen GEOJSON_PARSE_ERROR. - Om
resolutionExpr
är mindre än0
eller större än15
returnerar funktionen H3_INVALID_RESOLUTION_VALUE.
Exempel
-- 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