本文介绍了将SQL行转换为列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一张桌子:

A    B     c
a1   1     a11
a1   2     a12
a1   3     a13
a2   1     a21
a2   2     a22
a2   3     a23

,我想将其转换为:

A     C1     C2     C3
a1    a11    a12    a13
a2    a21    a22    a23

如何编写SQL查询来实现这一目标...我不想将表转换为csv并使用python来做到这一点...

How can I write a SQL query to achieve this... I do not want to convert my table to csv and use python and do it...

推荐答案

SELECT A,
MAX(CASE WHEN B=1 THEN c END) AS C1,
MAX(CASE WHEN B=2 THEN c END) AS C2, // etc for B=3,4
FROM table1
GROUP BY A

这篇关于将SQL行转换为列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-14 23:24