これは、アンピボット使用して行うことができ、次の手順を試してください:
SELECT [name], [Description],Months, Mon
FROM
(
SELECT [name], [Description], [Jan], [Feb],[mar],[Apr],[May],[June],[July]
FROM yourtable
) AS n
UNPIVOT
(
Mon FOR Months IN ([Jan], [Feb],[mar],[Apr],[May],[June],[July])
) AS up;
私の完全なスクリプトは、テストのために以下の通りです:
create table #temp
(
[name] varchar(255),
[Description] varchar(255),
[Jan] int,
[Feb] int,
[Mar] int,
[Apr] int,
[May] int,
[June] int,
[July] int
)
insert into #temp
values('Name1','Description1',4,6,8,8,4,5,7)
,('Name2','Description2',9,7,7,5,8,1,8)
,('Name3','Description3',1,10,1,4,6,4,3)
,('Name4','Description4',6,7,1,7,3,2,1)
,('Name5','Description5',3,9,8,6,6,5,7)
,('Name6','Description6',10,2,5,9,10,8,10)
,('Name7','Description7',10,8,5,7,10,7,8)
SELECT [name], [Description],Months, Mon
FROM
(
SELECT [name], [Description], [Jan], [Feb],[mar],[Apr],[May],[June],[July]
FROM #temp
) AS n
UNPIVOT
(
Mon FOR Months IN ([Jan], [Feb],[mar],[Apr],[May],[June],[July])
) AS up;
drop table #temp
あなたは 'UNPIVOT'を使用します。 Excelをそのまま現用のテーブルにアップロードし、必要なSQLテーブルに「UNPIVOT」を追加します。 –
ありがとうございます。上記の例では、SQL文はどのように見えますか? – ShortDive
最も効率的な方法はおそらくExcelを使用することです。 SQL Serverの要件はどこから発生していますか? –