簡體   English   中英

將 2 個數組數據類型列轉換為 Snowflake 中的行

[英]Converting 2 array data type columns into rows in Snowflake

我有一個兩列的表,它們都具有數組數據類型。 它們的數組大小相同(一個數組中的 3 個元素)。 數組列中的每個元素都與另一個數組列中相同位置的元素配對。 我想知道如何提取兩個數組列中的每個元素並使用 Snowflake 將它們轉換為多行。

這就是桌子的樣子

header 另一個header
["a","b","c"] [1,2,3]
["d","e","f"] [4,5,6]

我想得到這樣的結果

人物 數字
一個 1
b 2
c 3
d 4
e 5
F 6

提前感謝您的幫助。

您可以為此目的使用 FLATTEN:

select a1.VALUE, a2.VALUE from mytable,
LATERAL FLATTEN( col1 ) a1,
LATERAL FLATTEN( col2 ) a2
where a1.index = a2.index;

+-------+-------+
| VALUE | VALUE |
+-------+-------+
| "a"   |     1 |
| "b"   |     2 |
| "c"   |     3 |
| "d"   |     4 |
| "e"   |     5 |
| "f"   |     6 |
+-------+-------+

扁平 https://docs.snowflake.com/en/sql-reference/functions/flatten.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM