posexplodeدالة مولد ذات قيمة جدول (databricks SQL)

إرجاع الصفوف بواسطة إلغاء تداخل الصفيف مع ترقيم المواضع.

بناء الجملة

posexplode(expr)

الوسيطات

  • exprتعبير صفيف أو MAP.

المرتجعات

مجموعة من الصفوف تتألف من التعبيرات الأخرى في قائمة التحديد، وموضع العناصر في الصفيف أو الخريطة، وعناصر الصفيف، أو مفاتيح الخريطة وقيمها.

إذا كان expr ، لا يتم إنتاج NULL صفوف.

يتم تسمية الأعمدة التي تنتجها posexplode صفيفة نقطة البيع، والعقيد بشكل افتراضي، ولكن يمكن تسميتها. يمكنك أيضا الاسم المستعار لهم باستخدام مجموعة الاسم المستعار مثل AS (myPos, myValue) .

تسمى أعمدة الخرائط بشكل افتراضي نقطة البيع والمفتاح والقيمة. يمكنك أيضا الاسم المستعار لهم باستخدام مجموعة الاسم المستعار مثل AS (myPos, myKey, myValue) .

يمكنك وضع pos_explode فقط في قائمة تحديد أو عرض الجانبي. عند وضع الدالة في قائمة التحديد يجب أن يكون هناك أية دالة مولد أخرى في نفس قائمة التحديد.

أمثلة

> SELECT posexplode(array(10, 20)) AS elem, 'Spark';
 0  10 Spark
 1  20 Spark
> SELECT posexplode(map(1, 'a', 2, 'b')) AS (r, num, val), 'Spark';
 0  1   a   Spark
 1  2   b   Spark