【问题标题】:SSMS: Merge two Excel sheets into a single SQL Server tableSSMS:将两个 Excel 工作表合并到一个 SQL Server 表中
【发布时间】:2018-01-10 20:47:02
【问题描述】:

我有两张 Excel 表格,其中一张包含客户信息:

+-------+-------+-------+--------+
| Fname | Lname | Birth | Gender |
+-------+-------+-------+--------+

第二个事务日志格式如下:

+------+--------+
| Date | Amount |
+------+--------+

我的 SQL 表是空的,有以下字段:

+----+------------+-----------+--------+-------+-------+------+
| ID | First Name | Last Name | Gender | Birth | Spent | Date |
+----+------------+-----------+--------+-------+-------+------+

我正在寻找一种方法来合并两张表并将数据传输到表格中,但无法找到一种有效的方法。

【问题讨论】:

  • 有多少条记录?这是一次性活动还是周期性活动?
  • 如何将第一张表中的记录与第二张表匹配?似乎没有任何东西可以将两者联系在一起。
  • 什么是加入栏目?
  • @etsa 两张表都包含 7 行,每个单独销售一行。它们的日期是随机的,因为我只是想尝试用它们“重新组装”桌子作为练习。
  • @Aidan 唯一的相似之处是床单中的位置。销售 1 对应于客户 1,销售 2 是客户 2 的等等。

标签: sql-server excel


【解决方案1】:

您可以使用BULK INSERT 将excel 文件中的数据插入到表格中。我建议你做的是创建 2 个临时表; #Customers 和 #Transactions。将您的客户文件数据插入#Customers,将您的交易数据插入#Transactions。

然后,通过使用连接从两个临时表中选择您的数据,将数据插入到您的 CustomersAndTransactions 表中。

您可以在此处阅读BULK INSERT:https://docs.microsoft.com/en-us/sql/t-sql/statements/bulk-insert-transact-sql

StackOverflow 上已经有很多关于 BULK INSERT 的好问题,比如这个可以帮助您避免一些问题的问题:Import CSV file into SQL Server

【讨论】:

    猜你喜欢
    • 2013-09-15
    • 2021-11-05
    • 1970-01-01
    • 2020-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多