【问题标题】:HIve query combined tableHive查询组合表
【发布时间】:2021-03-12 13:24:36
【问题描述】:

请您帮忙解决以下问题。

我有三个输入表(表 1、表 2、表 3)

输出表应该有下面的列

日期:(结合所有的 payment_date、receive_date、maturity_date), payment_amount(为给定的 payment_date 填写正确的金额), receive_amount(为给定的接收日期填充正确的金额), ma​​turity_amount(为给定的maturity_date填充正确的金额), 给定日期列的total(payment_amount + receive_amount+maturity_amount)

【问题讨论】:

    标签: sql hadoop hive bigdata


    【解决方案1】:

    Hive 支持FULL JOIN,所以你可以使用:

    select coalesce(t1.payment_date, t2.receiver_date, t3.maturity_date) as date,
           t1.payment_amount,
           t2.receive_amount,
           t3.maturity_amount
    from table1 t1 full join
         table2 t2
         on t2.receive_date = t1.payment_date full join
         table3 t3
         on t3.maturity_date in (t2.receive_date, t1.payment_date)
    

    【讨论】:

    • 感谢@Gordon Linoff 的回复。成熟日期、付款日期和接收日期中的值不具有相同的日期。如何在同一个表中组合这些值。
    • @smp97 。 . .我不明白你的问题。这就是这个答案的作用。
    猜你喜欢
    • 1970-01-01
    • 2016-07-03
    • 2020-09-09
    • 1970-01-01
    • 2014-05-24
    • 1970-01-01
    • 2019-11-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多