hive查询语句中的常见错误

1、case when --else end 语句中忘记写end,或者忘记把整个字句用as起别名,因为一个字段如果用case when条件语句计算后就是已经生成新的字段了,不能再用以前的字段名称。例如:

原来的字段是age,他的值是连续的int,case when后变成一个值域为‘’20岁以下‘’,‘’20-30岁‘’,‘’30-40岁‘’,‘’40岁以上‘’的新字段了。

2、没有对union all链接后的大表重命名,或者直接把几个表进行union all ,而不是先进行查询。

union all的注意事项:

a、字段名称必须一致,

b、字段顺序必须对齐,

c、因为是上下堆砌,故不需要链接条件;

d、子查询之间不需要取别名,但是链接最后的大表如果又需要被其他语句引用则大表需要别名。

正确写法是:

union all和union 的区别见下表:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值