在 SQL Server 中,可以使用 PIVOT 操作符将行转列。以下是一个示例:
假设有一个名为 StudentScore 的表,包含以下数据:
StudentID | Subject | Score |
---|---|---|
1 | Math | 80 |
1 | English | 75 |
2 | Math | 90 |
2 | English | 85 |
要将上面的数据行转列,可以使用以下 SQL 查询:
SELECT StudentID, [Math], [English]
FROM
(SELECT StudentID, Subject, Score
FROM StudentScore) AS SourceTable
PIVOT
(
MAX(Score)
FOR Subject IN ([Math], [English])
) AS PivotTable;
执行上述查询后,将得到以下结果:
StudentID | Math | English |
---|---|---|
1 | 80 | 75 |
2 | 90 | 85 |
这样就实现了将行转列的功能。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
推荐阅读:sqlserver行转列的方法是什么