我的表有两列columnname和data

我发出像select * from mytable这样的简单sql,然后数据显示为

colname               data
-------------------   -----------
JID                   41185
WID                   0
AccountReference      LH169
OEReference           Ari002
InvoiceNumber         0


但是我想以不同的方式显示数据

JID     WID    AccountReference   OEReference     InvoiceNumber
41185   0      LH169              Ari002          0


如果我需要水平显示数据,那么我需要发出什么SQL .....请帮助。

最佳答案

SELECT  JID,WID,AccountReference,OEReference,InvoiceNumber
FROM
(
    SELECT colname, data FROM YourTableName
)
p
PIVOT
(
    Max(data) FOR colname
    IN ([JID],[WID],[AccountReference],[OEReference],[InvoiceNumber])
) AS pvt


您可以尝试以下链接。包含有关Pivot用法的教程。

Link1

Link2

10-01 18:01