【发布时间】:2015-11-12 19:10:44
【问题描述】:
我正在编写一个 shell 脚本,其中涉及 BigQuery 命令来查询现有表并将结果保存到目标表。
但是,由于我的脚本将定期运行,因此我有一个参数用于查询应运行的日期。
例如,我的脚本如下所示:
DATE_FORMATTED=$(date +%Y%m%d)
bq query --destination_table=Desttables.abc_$DATE_FORMATTED "select hits_eventInfo_eventLabel from TABLE_DATE_RANGE([mydata.table_],TIMESTAMP($DATE_FORMATTED),TIMESTAMP($DATE_FORMATTED)) where customDimensions_index = 4"
我收到以下错误:
Error in query string: Error processing job 'pro-cn:bqjob_r5437894379_1': FROM clause with table wildcards matches no table
我还能如何将变量 $DATE_FORMATTED 从 BigQuery 传递给 TABLE_DATE_RANGE 函数以帮助执行我的查询?
【问题讨论】:
-
这里的参数扩展看起来是正确的(如果你的时间戳真的是 20151112 而不是实际的 POSIX 时间戳)。您确定错误是由于参数扩展引起的吗?在我看来不是这样。问题似乎是错误消息中所说的:“带有表通配符的 FROM 子句与表不匹配”。
标签: linux bash google-bigquery gcloud