博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hive SQL报错:SemanticException [Error 10004]: Invalid table alias or column reference
阅读量:4289 次
发布时间:2019-05-27

本文共 1381 字,大约阅读时间需要 4 分钟。

Hive SQL报错:SemanticException [Error 10004]: Invalid table alias or column reference

在python脚本中执行Hive SQL

python脚本如下:

sql="""SELECTtest_url,(casewhen substring_index(test_url, '/', 1) == 'dev.test.com`:`1024/' then substr(test_url,25)when substring_index(test_url, '/', 1) == 'localhost:80/' then substr(test_url,21)else test_urlend) as test_url_cleaned,page_title,FROM test.report_tablewhere dt = '%s' and web_id in(select web_id FROM dev.dev_report) """% (num)

执行python脚本过程中报错:

FAILED: SemanticException [Error 10004]: Line 73:47 Invalid table alias or column reference ‘dev’: (possible column names are: test_url, test_url, page_title)

排查过程:

将SQL脚本单独拿出来执行时执行成功,但是实际在执行过程中报错如上,在google搜索错误信息时一开始用FAILED: SemanticException [Error 10004]搜索并没有搜索出有用的信息,多次检查脚本、搜索错误信息无果后极度想放弃。后来详细看了一下报错信息Invalid table alias or column reference ‘dev’,无效的表别名或者列引用,因为在我的sql中dev是表名起到了混淆作用,因此一开始并没有反应过来。后来将dev去掉后,发现报错为:Invalid table alias or column reference ‘test’:,因此找到问题所在:在python脚本中执行Hive SQL,拼接SQL语句时只能用占位符的方式拼接字符串。

修改后如下:

sql="""SELECT			test_url,			(case			    when substring_index(test_url, '/', 1) == '%s' then substr(test_url,25)			    when substring_index(test_url, '/', 1) ==  '%s' then substr(test_url,21)			    else ct_url			end) as test_url_cleaned,			page_title,		FROM			test.report_table		where			dt = '%s'			and web_id in			(				select web_id FROM dev.dev_report			)	) """% (url1,url2,num)

转载地址:http://mblgi.baihongyu.com/

你可能感兴趣的文章
netty源码分析之-服务端启动核心源码分析(5)
查看>>
Storm并行度和流分组详解
查看>>
缓存数据预热详解
查看>>
热点数据降级详解(storm+nginx+lua)
查看>>
加载更多功能实现
查看>>
React相关Dom约束性和非约束性操作
查看>>
Hystrix高可用架构介绍
查看>>
netty源码分析之-SimpleChannelInboundHandler与ChannelInboundHandlerAdapter详解(6)
查看>>
netty源码分析之-开发过程中重要事项分析(7)
查看>>
Sublime Text3插件详解
查看>>
netty源码分析之-ByteBuf详解(8)
查看>>
javascript函数定义三种方式详解
查看>>
javascript中this关键字详解
查看>>
javascript关于call与apply方法详解
查看>>
netty源码分析之-ReferenceCounted详解(9)
查看>>
javascript闭包详解
查看>>
javascript类的创建与实例对象
查看>>
javascript原型详解(1)
查看>>
netty源码分析之-处理器详解(9)
查看>>
javascript原型对象存在的问题(3)
查看>>