google bigquery bq命令语法错误

时间:2017-05-18 12:36:43

标签: google-bigquery

有人可以解释我为什么在以下代码中出现语法错误:

$ bq query --allow_large_results --destination_table=clients.tab_cl1 "SELECT * from adagency-167918:sourcedataset.src_table$20170516 where advertiserid=1 and timestamp="2017-05-16""

这是我得到的错误:

  

查询字符串出错:处理作业'adagency-167918:bqjob_r215d56938dbaa2b7_0000015c1a4c2932_1'时遇到错误:遇到“” - “” - “”在第1行第31行。       期待:       

1 个答案:

答案 0 :(得分:0)

编辑:问题与使用bq无关,实际上,虽然$存在问题。使用旧版SQL时,如果项目包含连字符,则需要使用[]来转义表名。例如,

[your-project:dataset.table]

使用standard SQL,您可以使用反引号:

`your-project.dataset.table`

所以你的查询应该是:

bq query --allow_large_results \
  --destination_table=clients.tab_cl1 \
  "SELECT * from [adagency-167918:sourcedataset.src_table\$20170516] where advertiserid=1 and timestamp=timestamp('2017-05-16')"