您的当前位置:首页sqlserver列转行函数

sqlserver列转行函数

来源:小侦探旅游网


sqlserver列转行函数

有多种方法可以将sql server中列数据转换为行数据,具体方法如下:

1、使用UNPIVOT操作:

UNPIVOT函数可以将一行多列数据转换为多行单列数据。

例如:

SELECT id, value

FROM tab_name

UNPIVOT (value for cols1,cols2 in (col1,col2)) unpvt;

在这里,unpvt是UNPIVOT运算符创建的一个虚拟表,cols1和cols2分别表示两个需要被解析的列,value表示被解析出来的列值。

2、使用CROSS APPLY操作:

CROSS APPLY可以潜在的创建一个表,它可以接受一个结果集作为参数,然后返回该结果集的列和行。

例如:

SELECT col_value

FROM tab_name

CROSS APPLY (VALUES(Cols1),Cols2) v (col_value);

这段代码中,col_value表示两列数据Cols1和Cols2被转换成的行数据。

因篇幅问题不能全部显示,请点此查看更多更全内容