以下命令工作正常。
SELECT TO_TIMESTAMP(ts
,'yyyyMMddHHmmss')FROM dfs.tmp` / mapr / my.cluster.com / hive / cpf_sales.json
但是当我尝试从select语句创建一个表时,它就会出错。以下是我试过的那个
ALTER SESSION SET store.format
='json';
使用dfs;
CREATE TABLE by_yr(gen_date)AS SELECT TO_TIMESTAMP(ts
,'yyyyMMddHHmmss')FROM dfs。/mapr/my.cluster.com/hive/cpf_sales.json
LIMIT 100;
错误:
org.apache.drill.common.exceptions.UserRemoteException:PARSE ERROR:遇到“;”在第1行第8列。期待其中一个:“。” ...“[”... SQL Query使用dfs; ^ CREATE TABLE by_yr(gen_date)AS SELECT TO_TIMESTAMP(ts
,'yyyyMMddHHmmss')FROM dfs。/mapr/my.cluster.com/hive/cpf_sales.json
LIMIT 100 [错误ID:81cbe394-b3c6-4c34-80ad-83325f748ae1 on iot3:31010] < / p>
使用dfs.tmp;
CREATE TABLE by_yr(gen_date)AS SELECT TO_TIMESTAMP(ts
,'yyyyMMddHHmmss')FROM dfs.tmp /mapr/my.cluster.com/hive/cpf_sales.json
LIMIT 100;
错误:
org.apache.drill.common.exceptions.UserRemoteException:PARSE ERROR:遇到“;”在第1行,第12栏。期待其中一个:“。” ...“[”... SQL查询使用dfs.tmp; ^ SELECT COLUMNS [0],COLAMNS [1]来自dfs.tmp。/mapr/my.cluster.com/donuts.json
[错误ID:5e9d1d20-a804-4d09-8b69-d76b3c009647 on iot2:31010]
答案 0 :(得分:0)
您可以尝试在路径中放置单引号,例如:
ALTER SESSION SET store.format='json'; use dfs;
CREATE TABLE by_yr (gen_date) AS
SELECT TO_TIMESTAMP(ts,'yyyyMMddHHmmss')
FROM dfs.'/mapr/my.cluster.com/hive/cpf_sales.json' LIMIT 100;
答案 1 :(得分:0)
这是有效的
CREATE TABLE myHDFS.testdata ./xuser / sample2.json` AS SELECT * FROM myHDFS.testdata .sample.json`
使用存储配置
&#34; testdata&#34;:{ &#34; location&#34;:&#34; / dir / data / test&#34;, &#34;可写&#34;:是的, &#34; defaultInputFormat&#34;:&#34; json&#34; },