189 8069 5689

sqlserver行换列,sqlserver 行列转置

SqlServer数据库怎么实现行转列的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)

)

sqlserver将一行数据转为一列显示,怎么实现

select * from

(

select id as Name , Subject = 'id' , Result = id from tb1

union all

select id as Name , Subject = 'yytc' , Result = yytcfrom tb1

) t

order by name , case Subject when 'id' then 1 when 'yytc' then 2 end

没有数据库,没法给你测试,你用这个试试,看好不好使

如果不好使,可以访问这个地址:

里边有行转列,列转行,应该有你想要的,你看看

sqlserver怎么行转列?

1,首先创建数据表

2,接着插入演示数据

3,需要把学生的每门成绩集中到一行

4,编写PIVOT函数实现

5,运行以后实现行转列

6,最后还可以用case when来实现

sqlserver怎么把查询结果的行变成列?

sqlserver自带得有一个stuff函数,可以结合group by 和distinct使用,可以实现行变列

关于SQLSERVER 字符串类型的行转列,该怎么解决

编写一个函数

create func sum_value(@kid int)

returns varchar(1000)

as

begin

declare @s varchar(1000)

set @s= ' '

select @s+=value+‘,’ from tb where kid=@kid

return @s

end

然后调用

select Kid,sum_value(Kid) from tb group by Kid


名称栏目:sqlserver行换列,sqlserver 行列转置
当前URL:http://cdxtjz.cn/article/dsisooe.html

其他资讯