SQL 服务器:导入 Excel 并将列名和值放入 table

SQL Server : import Excel and place column name and the value in table

我有一个 Excel 文件需要导入到 SQL 服务器。

Excel sheet:

Product 202147 202148 202149
Prod-A 15 10 11
Prod-B 7 18 16

这需要读入 SQL 服务器 table MyData:

YearWeek Product Value
202147 Prod-A 15
202147 Prod-B 7
202148 Prod-A 10
202148 Prod-B 18
202149 Prod-A 11
202149 Prod-B 16

如何在 SSIS 导入中执行此操作?

您不能直接在 SSIS 导入时执行此操作。另一方面,您可以在 table 上导入 excel,然后 运行 以下 sql 查询来实现您的目标:

select yearWeek, product, value
from myData
unpivot (value for yearWeek in ([202147], [202148], [202149])) up
order by 1,2

-- Result
/*
yearWeek    product value
202147      Prod-A  15
202147      Prod-B  7
202148      Prod-A  10
202148      Prod-B  18
202149      Prod-A  11
202149      Prod-B  16
*/