sql实现列转行的方法是什么

lewis 2016-07-27 24次阅读

在SQL中,可以使用UNPIVOT操作符来实现列转行的功能。UNPIVOT操作符可以将多个列转换为行,将多个列的值转换为行的值,并将这些值放在一个新的列中。UNPIVOT操作符通常与SELECT语句一起使用,可以使用它将列转换为行。

例如,假设有一个包含姓名、年龄和性别的表格,可以使用UNPIVOT操作符将这三列转换为行:

SELECT Name, Attribute, Value
FROM (
    SELECT Name, Age, Sex
    FROM YourTable
) t
UNPIVOT (
    Value FOR Attribute IN (Age, Sex)
) unpiv;

在这个例子中,先从原始表格中选择姓名、年龄和性别列,然后使用UNPIVOT操作符将这两列转换为行,其中Value列包含转换后的值,而Attribute列包含原始列的名称。



发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。