【发布时间】:2016-03-23 23:50:08
【问题描述】:
CREATE TABLE [dbo].(test)
[cid] [varchar](50) NULL,
[mid] [varchar](50) NULL,
[val] [varchar](50) NULL
) ON [PRIMARY]
表结构(select * form test)
cid mid val
h0609 c01 -213
h0609 c02 -7
h0609 c03 0
h0702 c01 -4
h0702 c04 -3
我需要这种格式的输出
cid c01 c02 c03 c04
h0609 -213 -7 0 NULL
h0702 -4 NULL NULL -3
h1171 NULL NULL -212 -117
h1272 -9 NULL NULL NULL
h1273 6 NULL NULL NULL
我尝试过的查询(但它给出了空值)
SELECT cid, mid,[c01],[c02],[c03],[c04]
FROM [dbo].[test]
PIVOT( max(val)
FOR val IN ([c01],[c02],[c03],[c04]) ) AS P
我得到了这样的输出
cid mid c01 c02 c03 c04
h0609 c01 NULL NULL NULL NULL
h0702 c01 NULL NULL NULL NULL
h1272 c01 NULL NULL NULL NULL
h1273 c01 NULL NULL NULL NULL
我需要这种格式的输出
cid c01 c02 c03 c04
h0609 -213 -7 0 NULL
h0702 -4 NULL NULL -3
h1171 NULL NULL -212 -117
h1272 -9 NULL NULL NULL
h1273 6 NULL NULL NULL
谁能帮忙?
【问题讨论】:
标签: sql sql-server tsql pivot