【发布时间】:2018-12-13 10:49:21
【问题描述】:
以下是我拥有的数据行:
ID Code OtherCol
7 Code1 NULL
7 code2 NULL
2 unk NULL
4 unk NULL
3 Code2 NULL
3 Code3 NULL
3 Code5 Other1
5 Code4 NULL
5 Code5 Other2
我正在尝试将其显示为
ID name1 name2 name3 name4 name5 nameunk Othername
2 unk
3 code2 code3 code5 Other1
4 unk
5 code4 code5 Other2
7 code1 code2
我能够旋转第一列,但旋转第二列时出现问题。
对于给定的code,还有一个name,但OtherCol 下的值是随机的。
【问题讨论】:
-
欢迎来到SO,但你的问题不清楚,
name1到name5是什么?我想code1显示在name1下,所以它对应于代码,但为什么code4显示在name5下?您要转置多少个唯一值?如果给定 ID 的unk值出现两次会怎样? -
感谢您指出,这是错误的。对于给定的 ID,“unk”只会发生一次
-
只是给一些比赛一个 ID 可以有从 Code1 到 Code5 的任何代码,包括对应于给定名称的“unk”(未知),唯一的扭曲是有时 ID 可以有完全随机的值(code5 标识“ other value' 和附加列 'OtherCol' 以捕获相应的值)以及任何其他代码,希望对您有所帮助
标签: sql sql-server tsql pivot multiple-columns