Hive 为什么配置单元中的串联返回错误?
我使用hive(Amazon Elastic Map Reduce)中的Hive 为什么配置单元中的串联返回错误?,hive,string-concatenation,amazon-emr,Hive,String Concatenation,Amazon Emr,我使用hive(Amazon Elastic Map Reduce)中的concat函数指定S3 bucket的路径(dval是日期值,将自动更改): 服务器返回以下错误: 失败:ParseException行4:9不匹配的输入“concat”,应在表位置规范中的“LOCATION”附近使用StringLiteral 据我所知,hive将pthstring变量读取为包含函数的字符串,而不是concat函数的结果。如何修复它?请注意,concat()是内置的配置单元字符串函数,可以应用于列字段的查
concat
函数指定S3 bucket的路径(dval是日期值,将自动更改):
服务器返回以下错误:
失败:ParseException行4:9不匹配的输入“concat”,应在表位置规范中的“LOCATION”附近使用StringLiteral
据我所知,hive将pthstring变量读取为包含函数的字符串,而不是concat
函数的结果。如何修复它?请注意,concat()是内置的配置单元字符串函数,可以应用于列字段的查询中,而不是使用配置单元变量
像这样使用:
hive (default)> set dval=03;
hive (default)> set pthstring=s3://mybucket/${hiveconf:dval}/;
hive (default)> set dval; ---------> gives : dval=03
hive (default)> set pthstring; ----> gives : pthstring=s3://mybucket/03/
hive (default)> set dval=03;
hive (default)> set pthstring=s3://mybucket/${hiveconf:dval}/;
hive (default)> set dval; ---------> gives : dval=03
hive (default)> set pthstring; ----> gives : pthstring=s3://mybucket/03/