查询Hive中的两个表

时间:2013-11-21 14:08:40

标签: hadoop hql hive

我有两张桌子f和t

f表

一个:两个:三个

1 dk jkdk

179 dsa ppd

90 dsj dat

t表

一个:两个:三个

0 100 aus

191 200 NZ

我想将f.one值与值t.one和t.two进行比较并获得返回t.three

例如,

如果f.one == 90则值应为aus

预期产出:

t.three

AUS

NZ

AUS

我试过了:

从t JOIN中选择t.three(从f中选择f.one)y,其中y.one> = t.one AND y.one< = t.two;

输出为:

aus

AUS

的Nz

1 个答案:

答案 0 :(得分:0)

你做得对,问题是结果不能保持表t的顺序,这就是为什么它似乎混合了。
将选择更改为t.one,t.three,您会看到它的罚款 如果订单真的很重要,您可以在最后添加order by t.one