Google bigquery google bigquery bq命令语法错误

Google bigquery google bigquery bq命令语法错误,google-bigquery,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:

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

$ 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列。 他期望:


编辑:这个问题实际上与使用bq无关,尽管$是有问题的。在使用传统SQL时,如果项目包含连字符,则需要使用[和]转义表名。比如说,

[your-project:dataset.table]
对于,您可以使用反勾号:

`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')"

bq查询-allow_large_results\>-destination_table=clients.tab_cl1\>从adagency-167918:sourcedataset.src_table$20170516中选择*,其中广告客户ID=1,timestamp='2017-05-16'查询字符串中的错误:错误处理作业'adagency-167918:bqjob_r245ac0dd9b13f50\U0000015C1B9C7D0D_1':遇到--在第23列第1行。他期望: