適用対象:
Databricks SQL
Databricks Runtime 16.3以降
この関数は h3_coverash3stringと同じように動作しますが、最初の引数が無効な場合はエラーの代わりに NULL を返します。 H3 セル ID を表すARRAY値のBIGINTを返します。 これらの値は、入力線形または等値地理を完全にカバーする、指定された解像度での六角形または五角形の最小セットに対応します。
構文
h3_try_coverash3string ( geographyExpr, resolutionExpr )
論争
-
geographyExpr:BINARY、STRING、または GeoJSON の線形 (ライン文字列またはマルチライン文字列) または areal (多角形またはマルチポリゴン) 地理を表す式または式。 地理は、 WGS84 座標参照システムを参照する経度と緯度の座標を度単位で持つことが期待されます。 -
resolutionExpr: H3 セル ID の解像度を指定するためのINT式であり、値は0から15までの範囲内です。
返品ポリシー
入力線形または等角地理を完全にカバーする、指定した解像度での六角形または五角形の最小セットに対応するARRAY値のBIGINT。
入力式のいずれかがNULLされている場合、この関数はNULLを返します。
最初の入力引数が BINARY 型の場合、入力値は、ラインストリング、ポリゴン、マルチラインストリング、またはマルチポリゴンの WKB 記述である必要があります。
最初の入力引数が STRING型の場合、入力値は、ラインストリング、ポリゴン、マルチラインストリング、またはマルチポリゴンの WKT または GeoJSON 記述である必要があります。
入力ラインストリング、多角形、マルチライン文字列、またはマルチポリゴンの寸法は、2D、3DZ、3DM、または 4D にすることができます。
この関数は、最初の引数が無効な NULL、WKT、または GeoJSON に対応している場合、またはライン文字列、多角形、複数行文字列、またはマルチポリゴンを表さない場合に、を返します。
エラー条件
-
resolutionExprが0より小さいか、15より大きい場合、関数はH3_INVALID_RESOLUTION_VALUEを返します。
例示
-- Simple example where the input is a triangle in WKT format.
> SELECT h3_coverash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 0);
[8027fffffffffff,8029fffffffffff,802bfffffffffff,8049fffffffffff]
-- Simple example where the input is a triangle in hexadecimal WKB format.
> SELECT h3_coverash3string(unhex('0103000000010000000400000050fc1873d79a5ec0d0d556ec2fe342404182e2c7988f5dc0f46c567dae064140aaf1d24d628052c05e4bc8073d5b444050fc1873d79a5ec0d0d556ec2fe34240'), 0);
[8027fffffffffff,8029fffffffffff,802bfffffffffff,8049fffffffffff]
-- Simple example where the input is a linestring in GeoJSON format.
SELECT h3_coverash3string('{"type":"LineString","coordinates":[[-122.4194,37.7749],[-118.2437,34.0522],[-74.0060,40.7128]]}', 1);
[8148fffffffffff, 8129bffffffffff, 812a3ffffffffff, 812abffffffffff, 81267ffffffffff, 8126fffffffffff, 81283ffffffffff]
-- Feeding an empty multipoint in GeoJSON format (as opposed to a linestring, polygon, multilinestring, or multipolygon).
> SELECT h3_try_coverash3string('{"type":"MultiPoint","coordinates":[]}', 2);
null
-- Feeding an invalid WKB (invalid endianness value)
> SELECT h3_try_coverash3string(unhex('020700000000'), 2);
null
-- Feeding an invalid polygon in WKT (polygon is not closed)
> SELECT h3_try_coverash3string('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-74.0060 40.7128))', 2);
null
-- Resolution is out of range.
> SELECT h3_try_coverash3string('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