首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用其他表中的多个值更新行- BigQuery

使用其他表中的多个值更新行- BigQuery
EN

Stack Overflow用户
提问于 2018-10-16 05:36:27
回答 2查看 3.9K关注 0票数 0

我在Bigquery 表ATable B中有两个表。

表A有两列-- name(String)和value(浮点)。名称列可以包含值。

表B有3列- start_value(Float),end_value(FLoat)和name(String).这3列不需要任何代价都是空的。

我的目标是更新名称为为null的行的表A。逻辑基本上是标识名称为null的值,然后在表B中找到相应的行,其中

代码语言:javascript
代码运行次数:0
运行
复制
a.value >= b.start_value and a.value <= b.end_value

这样,我必须在一个查询中更新表A中的所有行。我怎样才能做到这一点?

注:表A中没有两行是相同的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-16 06:51:54

代码语言:javascript
代码运行次数:0
运行
复制
UPDATE `project.dataset.tableA` a 
SET a.name = b.name
FROM `project.dataset.tableB` b
WHERE a.name IS NULL
AND value BETWEEN start_value AND end_value
票数 2
EN

Stack Overflow用户

发布于 2018-10-19 09:46:43

在这里,您有一个非常适合我的代码:

代码语言:javascript
代码运行次数:0
运行
复制
UPDATE `project.dataset.tableA` a
SET a.name = (
      SELECT b.name
      FROM `project.dataset.tableB` b
      WHERE value BETWEEN start_value AND end_value)
WHERE a.name IS NULL
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52828550

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档