我尝试使用保存在Google云端存储上的.sql
文件来查询BigQuery
我尝试使用bq
命令docs但没有成功。
bq query --use_legacy_sql=false < gs://bucket/path-to-file/file.sql
命令被误用了吗?
答案 0 :(得分:1)
使用可以同时使用:
bq query --nouse_legacy_sql
和
bq query --use_legacy_sql=false
检查您是否可以访问存储中的该存储桶,并将文件复制到本地文件夹中,如果它不是那么大:
gsutil cp gs://bucket/path-to-file/file.sql .
尝试应用该文件
bq query --nouse_legacy_sql << file.sql
如果文件不大,你可以尝试这样的技巧:
bq query --nouse_legacy_sql "$(gsutil cat gs://bucket/path-to-file/file.sql)"
答案 1 :(得分:0)
带脚本的文件应该是您的gcloud实例的本地文件 假设file.sql在您的工作目录中 - 下面的示例将起作用
bq query --use_legacy_sql=false < file.sql
因此,在您的情况下,您需要使用gsutil首先将file.sql从GCS加载到您的目录
gsutil cp gs://bucket/path-to-file/file.sql .
bq query --use_legacy_sql=false < file.sql