2

私はちょっと使い慣れていませんpivot。これからこのレコードをピボットするにはどうすればよいですか:

P1AVERAGE    P2AVERAGE    P3AVERAGE   -> column name
1.25         1.50         1.75

これに:

AVERAGENAME    AVERAGESCORE
p1Average      1.25
p2Average      1.50
p3Average      1.75

SQL Server と MS Access 2007 の両方を使用しています。

4

2 に答える 2

6

あなたがやろうとしているのは、列を行に戻すことではUNPIVOTなく、ピボットの反対です。PIVOT

SQL ServerUNPIVOTの場合、テーブル演算子を使用します。

SELECT *
FROM tablename AS t
UNPIVOT
(
  AVERAGESCORE
  FOR plaveragename IN([P1AVERAGE], [P2AVERAGE], [P3AVERAGE])
) AS u;

ここで実際にそれを見てください:

于 2013-05-17T15:36:09.757 に答える