h3_kring
وظيفه
ينطبق على: Databricks SQL Databricks Runtime 11.3 LTS وما فوق
ترجع هذه الدالة الخلايا H3 الموجودة ضمن مسافة k
(شبكة) الخلية الأصلية. تسمى مجموعة الخلايا H3 هذه - k
ring للخلية الأصلية.
بناء الجملة
h3_kring ( h3CellIdExpr, kExpr )
الوسيطات
h3CellIdExpr
: تعبير BIGINT أو تعبير سلسلة سداسي عشري يمثل معرف خلية H3.kExpr
: تعبير INTEGER يمثل مسافة الشبكة.kExpr
يجب أن تكون غير سالبة.
المرتجعات
صفيف من القيم من نفس نوع h3CellIdExpr
التعبير، المقابلة لمعرفات الخلية H3 التي لها نفس دقة خلية الإدخال H3 وداخل مسافة k
الشبكة من خلية الإدخال H3، حيث k
هي قيمة kExpr
.
ترجع الدالة NULL إذا كان أي من تعبيرات الإدخال NULL.
تقوم الدالة بالتحقق الجزئي فيما إذا كانت وسيطة الإدخال هي معرف خلية H3 صالح. شرط ضروري، ولكن ليس كافيا لمعرف H3 صالح هو أن قيمته بين 0x08001fffffffffff
و 0x08ff3b6db6db6db6
.
سلوك الدالة غير معرف إذا لم يكن معرف خلية الإدخال معرف خلية صالحا.
إذا كانت قيمة مسافة الشبكة صفرا، فإن الصفيف الذي تم إرجاعه يحتوي على قيمة واحدة تساوي معرف الخلية H3 للإدخال.
حالات الخطأ
- إذا كانت
h3CellIdExpr
سلسلة لا يمكن تحويلها إلى BIGINT أو تتوافق مع قيمة BIGINT أصغر من0x08001fffffffffff
أو أكبر من0x08ff3b6db6db6db6
، ترجع الدالة H3_INVALID_CELL_ID. - إذا كانت
kExpr
سالبة، ترجع الدالة H3_INVALID_GRID_DISTANCE_VALUE.
الأمثلة
-- Simple example where the first argument is a BIGINT.
> SELECT h3_kring(599686042433355775, 1)
[599686042433355775,599686030622195711,599686044580839423,599686038138388479,599686043507097599,599686015589810175,599686014516068351]
-- Simple example where the first argument is a STRING.
> SELECT h3_kring('85283473fffffff', 1)
[85283473fffffff,85283447fffffff,8528347bfffffff,85283463fffffff,85283477fffffff,8528340ffffffff,8528340bfffffff]
-- First input is an invalid H3 cell ID.
> SELECT h3_kring(0, 0)
[H3_INVALID_CELL_ID] 0 is not a valid H3 cell ID
-- Second input is an invalid grid distance value.
> SELECT h3_kring('85283473fffffff', -1)
[H3_INVALID_GRID_DISTANCE_VALUE] H3 grid distance -1 must be non-negative