Sql 如何在配置单元(HQL)中从长到宽重塑数据并创建自定义列?

Sql 如何在配置单元(HQL)中从长到宽重塑数据并创建自定义列?,sql,hive,hiveql,Sql,Hive,Hiveql,我的数据如下所示: customerID Interaction_Type Interaction_Date 541X MFML 2017-03-01 10:15:15 541X MFML 2017-03-01 10:32:10 541X COMM 2017-04-15 541X VINC 2017-04-20 7

我的数据如下所示:

customerID  Interaction_Type    Interaction_Date
541X        MFML                2017-03-01 10:15:15
541X        MFML                2017-03-01 10:32:10
541X        COMM                2017-04-15
541X        VINC                2017-04-20
732X        VSLS                2016-03-13
732X        TCU4                2016-03-18 23:11:07
732X        COMM                2016-04-10
我想将其重塑为以下格式:

customerID  Interaction_Type_1  Interaction_Date_1  Interaction_Type_2  Interaction_Date_2  Time_between_1&2  Interaction_Type_3    Interaction_Date_3 Time_between_2&3
541X        MFML                2017-03-01 10:15:15 MFML                2017-03-01 10:32:10 ...

因此,每一行都指向一个客户(为了避免列数爆炸,请想象每个客户只感兴趣的前100个交互),我们可以在添加其他列时获得交互间隔时间。

为什么要这样做?能够在客户级别使用一些聚类/挖掘算法。我知道这项重塑任务可能不是开始应用群集的最佳/高效方法,但我目前不知道。你为什么希望这样?能够在客户级别使用一些群集/挖掘算法。我知道这项重塑任务可能不是开始应用集群的最佳/有效方法,但我目前不知道。