h3_polyfillash3string functie

Van toepassing op:vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime 11.3 LTS en hoger

Retourneert een ARRAY van H3-cel-id's die worden weergegeven als STRING, overeenkomend met zeshoeken of vijfhoeken van de opgegeven resolutie waarvan de zwaartepunten zijn opgenomen in de invoer geografie.

Syntaxis

h3_polyfillash3string ( geographyExpr, resolutionExpr )

Argumenten

  • geographyExpr: A BINARY of STRING expressie die een areale geografie (veelhoek of multipolygon) vertegenwoordigt in WKB, WKT of GeoJSON. De geografie heeft naar verwachting lengte- en breedtegraadcoördinaten in graden die verwijzen naar het WGS84-coördinaatreferentiesysteem .
  • resolutionExpr: Een INT expressie, waarvan de waarde naar verwachting tussen 0 en 15 inclusief is, waarbij de resolutie voor de H3-cel-id's wordt opgegeven.

Retouren

Een ARRAY van STRING de waarden die overeenkomen met de H3-cel-id's van de opgegeven resolutie waarvan de zwaartepunten in de invoer zijn opgenomen, zijn geografie.

De functie retourneert NULL als een van de invoerexpressies is NULL. Als het eerste invoerargument van het type BINARYis, is de invoerwaarde naar verwachting de WKB-beschrijving van een veelhoek of een multipolygon. Als het eerste invoerargument van het type STRINGis, is de invoerwaarde naar verwachting de WKT of de GeoJSON-beschrijving van een veelhoek of een multipolygon. De dimensie van de invoermagon of multipolygon kan 2D, 3DZ, 3DM of 4D zijn.

Foutvoorwaarden

  • Als geographyExpr van het type BINARY is en de waarde een ongeldig WKB is of geen veelhoek of multipolygon vertegenwoordigt, retourneert de functie WKB_PARSE_ERROR.
  • Als geographyExpr van het type STRING is en de waarde een ongeldige WKT is of geen veelhoek of multipolygon vertegenwoordigt, retourneert de functie WKT_PARSE_ERROR.
  • Als geographyExpr van het type STRING is en de waarde een ongeldige GeoJSON is of geen veelhoek of multipolygon vertegenwoordigt, retourneert de functie GEOJSON_PARSE_ERROR.
  • Als resolutionExpr kleiner is dan 0 of groter is dan 15, retourneert de functie H3_INVALID_RESOLUTION_VALUE.

Voorbeelden

-- Simple example where the input is a triangle in WKT format.
> SELECT h3_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_polyfillash3string(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 2);
  [82268ffffffffff,82269ffffffffff,822987fffffffff,8226e7fffffffff,822997fffffffff,8226f7fffffffff,822657fffffffff,8229affffffffff]

-- Feeding an empty linestring in GeoJSON format (as opposed to a polygon or multipolygon).
> SELECT h3_polyfillash3string('{"type":"LineString","coordinates":[]}', 2);
  [GEOJSON_PARSE_ERROR] Error parsing GeoJSON: Invalid or unsupported type '"LineString"' at position 9

-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_polyfillash3string(unhex('020700000000'), 2);
  [WKB_PARSE_ERROR] Error parsing WKB: Invalid byte order 2 at position 1

-- Feeding an invalid polygon in WKT (polygon is not closed)
> SELECT h3_polyfillash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-74.0060 40.7128))', 2);
  [WKT_PARSE_ERROR] Error parsing WKT: Found non-closed ring at position 80

-- Resolution is out of range.
> SELECT h3_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