我需要将查询导出到文件。我正在尝试
(SELECT A.*
FROM dfs.ff.`filea.json` A
LEFT JOIN dfs.ff.`fileb.json` B ON (A.quote = B.quote)
WHERE B.C IS NULL) ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
STORED AS TEXTFILE LOCATION dfs.ff.`result.csv`;
但是给我抛出一个错误
使用BCP实用程序
bcp "SELECT A.*
FROM dfs.ff.`filea.json` A
LEFT JOIN dfs.ff.`fileb.json` B ON (A.quote = B.quote)
WHERE B.C IS NULL" queryout "D:\MyTable.csv" -c -t , -S SERVERNAME -T
-c参数指定字符输出,与SQL的本机二进制格式相反;这默认为制表符分隔的值,但-t会将字段终止符更改为逗号。 -T指定Windows身份验证(“可信连接”),否则使用-U MyUserName -P MyPassword。
默认情况下,这不会导出列标题。您需要对标题使用UNION ALL
OR
Use SQLCMD
SQLCMD -S SERVERNAME -E -Q "SELECT A.*
FROM dfs.ff.`filea.json` A
LEFT JOIN dfs.ff.`fileb.json` B ON (A.quote = B.quote)
WHERE B.C IS NULL"
-s "," -o "D:\MyData.csv"
也
使用Drill shell命令!record将所有输出记录到指定文件。 http://drill.apache.org/docs/configuring-the-drill-shell/
将CTAS用于此目的。不要忘记定义store.format
(默认为镶木地板)。文件编号:https://drill.apache.org/docs/create-table-as-ctas/。