hive查询报错no partition predicate found for alias "****_dt" table "***_dt"

博主后端Java代码请求Hive执行SQL语句报错,相同SQL在Hue上可正常执行。经排查,发现是代码中设置了hive.mapred.mode=strict,表分区为严格模式,查询条件无分区条件就报错,最终将其改为unstrict解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天遇到了一个很奇葩的问题,后端代码去请求hive执行sql语句,总报no partition predicate found for alias “*_dt" table "_dt”,而且通过我后端请求的sql要加上dt限制条件才能正常查询出结果,但是相同的sql语句(不加dt限制)在hue上执行的好好的,就是通过我的后端请求结果就报上面的错,很是头疼。查了好一会儿问题,才发现其实是我的代码中set hive.mapred.mode=strict,要查询的表分区设置了严格模式,查询条件如果没有分区条件,就会报次错误,最后代码更改set hive.mapred.mode=unstrict解决。binggo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值