如何在hive中编写相关查询

时间:2016-01-16 20:36:31

标签: hive

任何人都可以建议我们如何在hive中实现相关查询。

在SQL中我能写,但当我在hive中尝试相同时它会给出错误。

参考的SQL查询

SELECT M.MODELNAME,(SELECT SALE FROM CAR WHERE MONTH='Jan' AND    MODELID=M.MODELID) AS JAN_SALE,(SELECT SALE FROM CAR WHERE MONTH='Feb' AND     MODELID=M.MODELID) AS FEB_SALE,(SELECT SALE FROM CAR WHERE MONTH='Mar' AND     MODELID=M.MODELID) AS MAR_SALE FROM MODEL M INNER JOIN CAR C     ON(C.MODELID=M.MODELID);

请建议。

提前感谢:)

2 个答案:

答案 0 :(得分:1)

ViewPager

从模特M INNER     加入C. CODELID = M.MODELID GROUP by M.MODELID,M.MODELNAME,C.MONTH

答案 1 :(得分:0)

感谢Kim

但我真正想要的是以下格式

MODELNAME | JAN_SALE | FEB_SALE | MAR_SALE

您的查询在输出中提供了9行,但我的要求是每个模型的单行

我试着写一个相同的查询,请查看建议是否可以使用或是否会导致任何性能问题?

蜂房>选择不同的m.modelname,e.sale jan_sale,e2.sale feb_sale,e3.sale mar_sale from(select * from car where month ='JAN')e join car c on(e.modeid = c.modeid)join(select *来自car的月份='FEB')e2 on(c.modeid = e2.modeid)join(select * from car where month ='MAR')e3 on(c.modeid = e3.modeid)join model m on( c.modeid = m.modelid);

结果是:

奥迪20.0 21.0 30.0

Duster 20.0 21.0 30.0

Maruti 12.0 13.0 16.0

相关问题