Google bigquery 从文本文件运行查询

Google bigquery 从文本文件运行查询,google-bigquery,Google Bigquery,我试图从命令行运行一个大的查询,但是因为我的查询很长,所以我把它写在一个文本文件中。查询是从GUI进行的,我正在覆盖一个已经存在的表 bq query --allow_large_results --replace --destination_table=me.Tbl_MyTable '`cat query.txt`' 但是,我得到了错误结果: 查询字符串中出错:处理作业时出错 “开发人员:bqjob_r_u00000123456789456123_1”:遇到” 第1行第1列的“\'cat

我试图从命令行运行一个大的查询,但是因为我的查询很长,所以我把它写在一个文本文件中。查询是从GUI进行的,我正在覆盖一个已经存在的表

bq query --allow_large_results --replace --destination_table=me.Tbl_MyTable  '`cat query.txt`'
但是,我得到了错误结果:

查询字符串中出错:处理作业时出错 “开发人员:bqjob_r_u00000123456789456123_1”:遇到” 第1行第1列的“\'
cat query.txt
\'”。 她期待的是:EOF

  • 是否需要将整个文件路径放在.txt文件名中?(这似乎没有什么区别)
  • 文本文件中是否有需要注意的字符(例如“\”或引号)
  • 我使用where子句和group by子句-这是一个问题吗

而不是
cat
,只需通过管道从文件中输入即可。命令是:

bq query --allow_large_results --replace --destination_table=me.Tbl_MyTable < query.txt
bq查询--允许\u大\u结果--替换--目标\u table=me.Tbl\u MyTable

这将把
query.txt
的内容发送到
bq
工具。

Elliot是正确的,现在如果您想使用cat、sed或其他工具,请使用管道:

cat query.txt | bq query

我试过这个,但它对我不起作用,不承认cat是一个函数(??)你在使用什么操作系统?我在使用Windows 7解决方案可能会涉及类似的内容,但我没有Win7来测试它。。。