如何将数据加载到另一个表中[关闭]
Posted
技术标签:
【中文标题】如何将数据加载到另一个表中[关闭]【英文标题】:How to load data into another table [closed] 【发布时间】:2020-12-09 04:44:13 【问题描述】:我有一个名为 t1 的大表,它有很多列(c1、c2、c3、c4、c5、c6、c7、c8、c9、c10)。
我有另一个名为 t2 的表,它只有 c1 列。
如何从 t2 填充此表?
我知道有一个命令叫做 CTAS。但这也会创建表。但是我只是想填充表t2和数据库中已经存在的t2表。
我想用所有不同的 t1.c1 填充 t2.c1。
【问题讨论】:
您的预期结果是什么? t2 中的 10 行对应 t1 的一行,或者您只想用 t1.c1 填充 t2.c1? 【参考方案1】:您可以在这里使用INSERT INTO ... SELECT
:
INSERT INTO t2 (c1)
SELECT DISTINCT c1
FROM t1;
但实际上,您可能还只是想创建一个视图,它从第一个表中返回所有不同的 c1
值:
CREATE VIEW c1_view AS
SELECT DISTINCT c1
FROM t1;
这避免了正式创建第二个表,也避免了第二个表中的c1
值随着第一个表中的数据变化而变得陈旧和过时的问题。
【讨论】:
以上是关于如何将数据加载到另一个表中[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将数据库 A 的 Hive 表中的数据加载到数据库 B 的 Hive 表中?
Pig 未将数据加载到 HCatalog 表中 - HortonWorks Sandbox [关闭]