【问题标题】:Create a new permanent table from all the data in 4 other tables从其他 4 个表中的所有数据创建一个新的永久表
【发布时间】:2021-09-05 00:29:31
【问题描述】:

我在 SQL Server 中使用其导入向导从 4 个.csv 文件(4 个日历季度的数据)创建了 4 个表。它们都有 12 列,具有相同的列名、相同的顺序、相同的各自数据类型等。

现在,我需要将所有这些数据中的所有数据合并/合并到一个永久表中。合并后,该表将有大约 470 万行。

我认为这样做的方法是UNION,但我不知道如何将其结果变成永久表格。

所以我创建了一个新的空表(称为Master),其中包含原始 4 个表的所有相同列和数据类型。我想我会使用这 4 个表中的所有数据来使用 INSERT INTO 填充新表。

虽然我能够创建新的空表,但它没有出现在原始 4 个表所在的左侧导航窗格中。无论如何,我无法弄清楚如何用 4 个原始表中的所有数据填充新的 Master 表。我尝试了INSERT INTO,但无法让它发挥作用。

【问题讨论】:

  • 根据问题指南,请展示您的尝试并告诉我们您发现了什么(在本网站或其他地方)以及为什么它不能满足您的需求。

标签: sql sql-server tsql union create-table


【解决方案1】:

您可以自己在 SQL 中执行此操作:

select *
into all_data
from table1
union all
select *
from table2
union all
select *
from table3
union all
select *
from table4;

select * 的使用假定表具有以相同顺序定义的相同列。如果没有,您应该只按名称列出列。

【讨论】:

  • 谢谢,戈登。那么新表的名称是什么?它会与原始表格一起出现在左侧导航窗格中吗?
  • 您可能需要刷新才能看到它。
  • 无赖,刷新了很多,我使用 CREATE TABLE 创建的表都没有显示在那里。
  • 我正在尝试删除我今天早上制作的名为 Master 但它说它不存在,但是当我执行 SELECT * FROM Master 时,所有数据都在那里。
  • 米奇,为什么不叫Master,是保留字吗?
猜你喜欢
  • 2018-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-27
  • 2012-11-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多