比较两个数据库表并将值从一个附加到另一个

Posted

技术标签:

【中文标题】比较两个数据库表并将值从一个附加到另一个【英文标题】:Comparing two db tables and appending values from one to another 【发布时间】:2021-01-22 11:45:11 【问题描述】:

我有两个数据库表。第一个,all_data,包含大约 400 万行,其中包含有关网站上用户交互的信息。第二个 region 包含英国 1,800 个城镇的列表,以及它们对应的 countyTV region

all_data 列之一引用了用户居住的城镇。 我需要检查all_data 的每一行与region 的所有行。如果城镇匹配,我需要将region 中的countyTV region 附加到all_data 中的行。

我对@9​​87654332@ 比较陌生,我无法想象它应该如何工作。由于这发生在BigQuery,我需要将处理成本保持在最低限度。

【问题讨论】:

【参考方案1】:

这听起来像left join

select a.*, r.country, r.tv_region
from all_data a left join
     region r
     on a.town = r.town;

【讨论】:

@lightfoot34 。 . .我会提醒你,在美国有(很多)不同城镇名称相同的例子。例如,我认为据说所有州都有一个“斯普林菲尔德”。 非常好 - 谢谢。我可以通过包括该地区(英格兰、北卡罗来纳州、威尔士、苏格兰)来缓解这种情况。

以上是关于比较两个数据库表并将值从一个附加到另一个的主要内容,如果未能解决你的问题,请参考以下文章

使用VBA将值从一个表粘贴到另一个表

根据查找值将值从一张表匹配并粘贴到另一张表中

Excel VBA 将值从一张表移动到另一张表

比较两个表寻找差距,将它们附加到新表中

Pandas:根据条件将值从一个数据帧合并到另一个数据帧

将一个真值表附加到另一个