【问题标题】:Not able to execute join operation in HIVE using Coudera QuickStart VM无法使用 Cloudera QuickStart VM 在 HIVE 中执行加入操作
【发布时间】:2018-03-23 12:22:22
【问题描述】:

尝试在 Cloudera QuickStart 上执行连接操作时出现 Hive 错误

你能给出一个想法,为什么会出现这个错误

hive> desc orders;
OK
order_id                int                                         
order_date              string                                      
order_customer_id       int                                         
order_status            string                                      
Time taken: 0.318 seconds, Fetched: 4 row(s)

hive> desc order_items;
OK
order_item_id           int                                         
order_item_order_id     int                                         
order_item_product_id   int                                         
order_item_quantity     tinyint                                     
order_item_subtotal     double                                      
order_item_product_price    double                                      
Time taken: 0.325 seconds, Fetched: 6 row(s)

hive> select order_date, sum(order_item_subtotal) daily_revenue 
      from orders 
      join order_items on order_id = order_item_order_id
      group by order_date;

查询 ID = cloudera_20180323171616_557f9c3a-2443-42ec-b509-13a7d7f680d0 工作总数 = 1 FAILED:执行错误,从 org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask​​ 返回代码 1

蜂巢> //我尝试过使用新数据库并在执行此查询之前重新加载表,但每次都会遇到相同的错误。

提前感谢您的考虑。

【问题讨论】:

  • 查询没有问题。在列名前使用别名,然后重试。

标签: hive


【解决方案1】:

select o.order_date, sum(oi.order_item_subtotal) as daily_revenue from 订单 o 在 o.order_id = oi.order_item_order_id 上加入 order_items oi 按 o.order_date 分组;

这应该可以解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多