簡體   English   中英

Bigquery 中的 For 循環

[英]For loop in Bigquery

Bigquery中的以下SQL:

FOR tableId IN (
  select table_id
  from `misys-db-replication-nutracap.hevo_dataset_misys_db_replication_nutracap_LPj9.__TABLES__`
  WHERE NOT STARTS_WITH(table_id, "mi")
)
DO
  DROP TABLE `misys-db-replication-nutracap.hevo_dataset_misys_db_replication_nutracap_LPj9`.tableId.table_id;
END FOR;

通過一個錯誤:

Invalid value: Invalid project ID 'misys-db-replication-nutracap.hevo_dataset_misys_db_replication_nutracap_LPj9'. Project IDs must contain 6-63 lowercase letters, digits, or dashes. Some project IDs also include domain name separated by a colon. IDs must start with a letter and may not end with a dash. at [7:3]

在我看來, tableId.table_id 點被視為表路徑的一部分,但我不知道如何修復它。

您需要執行以下操作:

FOR item IN (
  select table_id
  from `dataset.__TABLES__`
  WHERE STARTS_WITH(table_id, "Table")
)
DO
  EXECUTE IMMEDIATE concat("DROP TABLE `dataset`.",item.table_id);
END FOR;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM