Google BigQuery - 如何使用bq命令删除表?

Alo*_*ldi 10 google-bigquery

Google BigQuery - bq命令可让您创建,加载,查询和更改表.

我没有找到关于丢桌的任何文件,很高兴知道如何做到这一点.

我发现bq工具更容易实现,而不是为每个命令编写python接口.

谢谢.

Alo*_*ldi 26

找到了 :

bq rm -f -t data_set.table_name

-t for table -f for force

伟大的工具.

  • 有没有办法批量删除多个表? (5认同)
  • @activelearner,您可以使用`-r。使用-r删除命名数据集中的所有表` (2认同)

小智 10

有没有办法批量删除多个表? - activelearner

在bash中,您可以执行以下操作:

for i in $(bq ls -n 9999 my_dataset | grep keyword | awk '{print $1}'); do bq rm -ft my_dataset.$i; done;
Run Code Online (Sandbox Code Playgroud)

说明:

  • bq ls -n 9999 my_dataset - 在我的数据集中列出最多9999个表
  • | grep keyword - 将上一个命令的结果输入grep,搜索表格共有的关键字
  • | awk '{print $1}' - 将上一个命令的结果输入awk并仅打印第一列
  • 将所有内容包装到for循环中
  • do bq rm -ft my_dataset.$i; done; - 从数据集中删除每个表

我强烈建议您在添加'do bq rm'之前运行命令列出要删除的表.这样,您可以确保只删除实际要删除的表.