sql 查询出一列内容,如何让它成一行显示。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 查询出一列内容,如何让它成一行显示。相关的知识,希望对你有一定的参考价值。

如图,查询出了一列内容的日期,但是我想让它成一行显示。要求是每一列显示一个日期。这个要怎么写?求大神指导。

进行行转列下面是相关语法等

PIVOT 用于将列值旋转为列名(即行转列),在 SQL Server 2000可以用聚合函数配合CASE语句实现
PIVOT 的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P
注意:PIVOT、UNPIVOT是SQL Server 2005 的语法,使用需修改数据库兼容级别(在数据库属性->选项->兼容级别改为 90 )
SQL2008 中可以直接使用
完整语法:

table_source

PIVOT(

聚合函数(value_column)

FOR pivot_column

IN(<column_list>)

)

View Code
UNPIVOT 用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现

完整语法:

table_source

UNPIVOT(

value_column

FOR pivot_column

IN(<column_list>)

)
参考技术A --参考
SELECT STUFF((SELECT ','+ 字段名称 FROM 表名称 for xml path('')),1,1,'');

参考技术B --case when  可以进行横列转换

以上是关于sql 查询出一列内容,如何让它成一行显示。的主要内容,如果未能解决你的问题,请参考以下文章

sql查询 表中一列不重复 显示多列

oracle 结果集行转列,多行数据转为一行显示,第一列内容拼接生成字段名

sql中如何使一列中的多个重复数据只显示第一条

iview 中table列 一列显示多个数据(后台返回数组显示在列内)

sql查询 ,多行数据合并成一行,并且显示合并后某一列的值拼接结果

mysql查询出一列里面重复过的数据(2个或以上)