在配置单元中添加具有常数值的新列



我正在尝试从另一个带有额外列的表errcode创建一个名为errtable的表。错误代码表具有以下架构:

id字符串,消息字符串

errtable有一个额外的列,它是app_name

appname字符串,id字符串,消息字符串

我试图运行的查询如下:

INSRT覆盖表ERRTABLE选择${APPLICATION_NAME}作为appname、err.id、err.msg来自(从ERRCODE中选择*)错误;

APPLICATION_NAME是一个常量变量,它通过-d选项(-d APPLICATION _NAME=myapp(传递给我的配置单元脚本。我收到以下错误消息:失败:SemanticException[错误10004]:行4:7无效的表别名或列引用'myapp':(可能的列名为:id,msg(。有人能帮我弄清楚我做错了什么吗?

@Santanu:试试这个,它应该可以

INSERT overwrite table ERRTABLE  
SELECT '${APPLICATION_NAME}' as appname, err.id as id, err.msg as msg FROM ERRCODE err;

最新更新