如何在 Snowflake 的两列中创建包含数据的解压缩 table?

How do I create an unzipped table with data in two columns in Snowflake?

我从下面的 table 中获得了这些数据。

|姓名(第 1 栏) |值(第 2 列)| Customer_ID(第 3 列)|

| account_status |活跃 |第1234章|

| card_template |奖励 |第1234章|

| customer_creation_date | 2022 年 1 月 8 日 |第1234章|

|enroll_store_code | pxweb |第1234章|

| enroll_store_name |网址 |第1234章|

| push_opt_in |是 |第1234章|

| account_status |不活跃 | 3421 |

| card_template | PX 奖励 | 3421 |

| customer_creation_date | 2022 年 1 月 8 日 | 3421 |

| enroll_store_code | pxweb | 3421 |

| enroll_store_name |网址 | 3421 |

| push_opt_in |是 | 3421 |

我想将此数据转换为新的 table 格式如下;

客户编号 | account_status | card_template | customer_creation_date | enroll_store_code | enroll_store_name | push_opt_in | 第 1234 章活跃 | PX 奖励 | 2022 年 1 月 8 日 | pxweb |网址 |是

此处需要旋转逻辑:

SELECT
    Customer_ID,
    MAX(CASE WHEN Name = 'account_status' THEN VALUE END) AS account_status,
    MAX(CASE WHEN Name = 'card_template' THEN VALUE END) AS card_template,
    MAX(CASE WHEN Name = 'customer_creation_date' THEN VALUE END) AS customer_creation_date,
    MAX(CASE WHEN Name = 'enroll_store_code' THEN VALUE END) AS enroll_store_code,
    MAX(CASE WHEN Name = 'enroll_store_name' THEN VALUE END) AS enroll_store_name,
    MAX(CASE WHEN Name = 'push_opt_in' THEN VALUE END) AS push_opt_in
FROM yourTable
GROUP BY Customer_ID;