${beeline_url} --silent=true --showHeader=false --outputformat=csv2 --showWarnings=false -e "select concat('invalidate metadata ', trim(table_name) , '; refresh ', trim(table_name) ,';') from my_Table " > /home/table_list.csv我试图运行这个查询,结果出现了错误。同样的查询在蜂箱,色调,甚至直线上运行都很好。
在使用直线时,下面的查询给出了结果
0: jdbc:hive2://host> select concat("invalidate metadata ", trim(table_name)) from my_Table; 我试着将查询存储在一个文件中,但结果却是错误的。
${beeline_url} --silent=true --showHeader=false --outputformat=csv2 --verbose=false --showWarnings=false -f get_table_list.hql > /home/table_list.csvget_table_list.hql有
SELECT (CONCAT('invalidate metadata ', trim(table_name) , '; refresh ', trim(table_name) ,';')) from my_table;错误:
错误:编译语句时出错:失败: ParseException行1:59无法识别select表达式(state=42000,code=40000)中“附近的输入
发布于 2019-02-05 15:16:36
分号需要使用\\进行屏蔽
SELECT (CONCAT('invalidate metadata ', trim(table_name) , '\\; refresh ', trim(table_name) ,'\\;')) from my_table;或者用\073替换它们
SELECT (CONCAT('invalidate metadata ', trim(table_name) , '\073 refresh ', trim(table_name) ,'\073')) from my_table;这些解决办法之一应该能奏效。
https://stackoverflow.com/questions/54537462
复制相似问题