如何将查询导出到文件

问题描述 投票:0回答:3

我需要将查询导出到文件。我正在尝试

(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`;

但是给我抛出一个错误

sql apache-drill
3个回答
0
投票

使用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" 

http://www.egenconsulting.com/output-sql-to-csv/

http://solvedstack.com/questions/is-there-a-select-into-outfile-equivalent-in-sql-server-management-studio


0
投票

使用Drill shell命令!record将所有输出记录到指定文件。 http://drill.apache.org/docs/configuring-the-drill-shell/


0
投票

将CTAS用于此目的。不要忘记定义store.format(默认为镶木地板)。文件编号:https://drill.apache.org/docs/create-table-as-ctas/

© www.soinside.com 2019 - 2024. All rights reserved.