Google bigquery Google BigQuery-如何使用bq命令删除表?
GoogleBigQuery-bq命令允许您创建、加载、查询和更改表 我没有找到任何关于删除表的文档,我很高兴知道如何做 我发现bq工具比为每个命令编写python接口更容易实现 谢谢。找到了:Google bigquery Google BigQuery-如何使用bq命令删除表?,google-bigquery,Google Bigquery,GoogleBigQuery-bq命令允许您创建、加载、查询和更改表 我没有找到任何关于删除表的文档,我很高兴知道如何做 我发现bq工具比为每个命令编写python接口更容易实现 谢谢。找到了: bq rm -f -t data_set.table_name -t用于表格,-f用于强制,-r删除命名数据集中的所有表格 很棒的工具 是否有方法批量删除多个表?–主动学习者 在bash中,您可以执行以下操作: for i in $(bq ls -n 9999 my_dataset | grep ke
bq rm -f -t data_set.table_name
-t
用于表格,-f
用于强制,-r
删除命名数据集中的所有表格
很棒的工具
是否有方法批量删除多个表?–主动学习者 在bash中,您可以执行以下操作:
for i in $(bq ls -n 9999 my_dataset | grep keyword | awk '{print $1}'); do bq rm -ft my_dataset.$i; done;
说明:
-在我的数据集中最多列出9999个表bq ls-n 9999 my_数据集
-将上一个命令的结果导入grep,搜索表中有共同点的关键字| grep keyword
-将上一个命令的结果导入awk,并仅打印第一列|awk'{print$1}'
- 将所有这些都封装到for循环中
do bq rm-ft my_数据集。$i;完成代码>-从数据集中删除每个表
-ft
现在返回一个错误,只需-f
即可强制删除,无需提示:
for i in $(bq ls -n 9999 my_dataset | grep keyword | awk '{print $1}'); do bq rm -f my_dataset.$i; done;
我使用命令行
for loop
删除了一个月的表数据,但这取决于表的命名:
对于(01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 17 18 19 20 21 22 23 24 26 27 28 29 30 31)中的%d,请执行bq rm-f-t数据集。tablename_201701%d
您可以使用Python代码(在Jupyter笔记本上)实现相同的目的:
如果要删除完整的数据集:
如果数据集也包含表。我们希望一次性删除包含表的数据集命令为:
!bq rm -f -r serene-boulder-203404:Temp1 # It will remove complete data set along with the tables in it
如果数据集为空,则还可以使用以下命令:
要使用以下命令,请确保已删除该数据集中的所有表,否则将生成错误(数据集仍在使用)
有办法批量删除多个表吗?@activelearner您可以使用
-r。使用-r,删除命名数据集中的所有表
!bq rm -f -r serene-boulder-203404:Temp1 # It will remove complete data set along with the tables in it
#Now remove an empty dataset using bq command from Python
!bq rm -f dataset_id
print("dataset deleted successfully !!!")