如何使用BigQuery API一次更新所有数据



我在这篇文章中看到(https://cloud.google.com/bigquery/docs/samples/bigquery-update-with-dml)如何通过DML更新数据。(作为参考,我正在使用Java和Spring Boot进行开发。(

另外一个问题是,是否可以通过BigQuery API发送json数据并将其用于批量更新。

json数据示例:

[{"id":1, "name":"a"}, {"id":1, "name":"b"}, {"id":2, "name":"a"}]

下面是我想要运行的更新查询。(该表的PK是"id"one_answers"name"(

update table A
set A.value = 'test'
where (A.id, A.name) in (
...In this part, I want to use the above json data as a condition...
)

是否可以用";BigQuery.query";方法或者,我想知道是否还有其他办法。

还是只有一种方法可以逐个为上面的json数据创建更新查询,并有条件地执行它?(如下面的查询(

update table A
set A.value = 'test'
where A.id = 1
and A.name = 'a'
...
...
update table A
set A.value = 'test'
where A.id = 1
and A.name = 'b'
...
...
update table A
set A.value = 'test'
where A.id = 2
and A.name = 'a'

您可以使用JSON函数来检索和转换JSON数据。GCP引入了一些新功能来处理JSON数据类型,但有一些限制,但可以用于创建JSON值、插入JSON数据以及查询。使用它,您可以将半结构化的JSON摄取到BigQuery中。此功能使您不必遵守固定的模式和数据类型,从而使其更加灵活。有关JSON数据类型的更多信息,您可以查看此文档。

最新更新