bigquery java客户端删除语句,sql查询

dced5bon  于 2023-04-28  发布在  Java
关注(0)|答案(1)|浏览(122)

我正在使用Java客户端进行BigQuery。我正试图从表中删除几条记录。我还没有遇到任何直接的API来实现同样的目标。Insert/InserAll,删除我所知道的完整数据集API。
基本上,我们如何使用java客户端API从bigquery中删除记录。此外,如果有人能指出一个更好的Java客户端文档,它将是救生圈。
如何执行此语句

delete from dataset.tablename where somecondtion;
2admgd59

2admgd591#

您可以使用Java客户端API处理此代码片段以从BigQuery中删除记录:

import com.google.cloud.bigquery.BigQuery;
import com.google.cloud.bigquery.BigQueryOptions;
import com.google.cloud.bigquery.QueryJobConfiguration;
import com.google.cloud.bigquery.TableId;

public class DeleteRecords {
  public static void main(String[] args) throws InterruptedException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "your-project-id";
    String datasetName = "my_dataset";
    String tableName = "my_table";
    String filterCondition = "somecondition";

    BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();
    QueryJobConfiguration queryConfig =
        QueryJobConfiguration.newBuilder(
                String.format(
                    "DELETE FROM `%s.%s.%s` WHERE %s",
                    projectId, datasetName, tableName, filterCondition))
            .build();

    bigquery.query(queryConfig);
  }
}

有关Big Query和Java的文档,请参阅here

相关问题