1

これは、私がやりたいことの一部を実行するための私のコードです:

SELECT uID, ColumnName, ColumnResult
FROM table
UNPIVOT
(
ColumnResult
for ColumnName in (COL1,COL2,COL3)
 )u

これは次のようなものを返します。

ありがとう

4

2 に答える 2

1

列名を新しい値に置き換える次のクエリを使用できます。

select uID,
  case ColumnName 
    when 'COL1' then 'columnOne'
    when 'COL2' then 'columnTwo'
    when 'COL3' then 'columnThree'
  end ColumnName, 
  ColumnResult
from TABLE
unpivot
(
  ColumnResult
  for ColumnName in (COL1,COL2,COL3)
)u;

デモで SQL Fiddle を参照してください

于 2013-04-30T20:34:32.860 に答える