数据库行转列-SQL行转列的问题,求各位大大帮助下

问题描述

SQL行转列的问题,求各位大大帮助下

数据库中保存的是:
单据类型 审核级次 审核人
A 1级 张三
A 1级 李四
A 2级 王五
求查出的数据为:
单据类型 1级审核人 2级审核人

A 张三 王五
A 李四

该如何写代码啊,小白求助!!

时间: 2024-12-24 22:07:26

数据库行转列-SQL行转列的问题,求各位大大帮助下的相关文章

sql 行转列总结

原文:sql 行转列总结 PIVOT UNPIVOT的用法 PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (-) )AS P 完整语法: table_source PIVOT( 聚合函数(value_column) FOR pivot_column IN(<column_list>) ) UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2

SQL行转列汇总

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

SQL Server 动态行转列(参数化表名、分组列、行转列字段、字段值)

原文:SQL Server 动态行转列(参数化表名.分组列.行转列字段.字段值) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:使用拼接SQL,静态列字段: 方法二:使用拼接SQL,动态列字段: 方法三:使用PIVOT关系运算符,静态列字段: 方法四:使用PIVOT关系运算符,动态列字段: 扩展阅读一:参数化表名.分组列.行转列字段.字段值: 扩展阅读二:在前面的基础上加入条件过滤: 参考文献(R

SQL行转列和列转行代码详解

行列互转,是一个经常遇到的需求.实现的方法,有case when方式和2005之后的内置pivot和unpivot方法来实现. 在读了技术内幕那一节后,虽说这些解决方案早就用过了,却没有系统性的认识和总结过.为了加深认识,再总结一次. 行列互转,可以分为静态互转,即事先就知道要处理多少行(列);动态互转,事先不知道处理多少行(列). --创建测试环境 USE tempdb; GO IF OBJECT_ID('dbo.Orders') IS NOT NULL DROP TABLE dbo.Orde

SQl列转置行的问题,请求大神帮忙!!!

问题描述 SQl列转置行的问题,请求大神帮忙!!! 上图中为SQL sever 2005中数据,想把上图列的内容转置为下图中的行,T1,T2....T6为连续的点,数据有上千条,请问大神们怎么解决 解决方案 http://www.cnblogs.com/luofuxian/archive/2012/02/23/2364328.html

sql 行转列

问题描述 sql论坛没人.才来C#论坛来发贴.这样一行数据,201502是我根据参数'2015'取最大2015xx(数据不止一行,一共是7行,前3年,后3年,包括本年最大)我要转换成列,如表格图一样,我想查询成2015列名123.0000对应列Month1To2_WorkBook_Audit_Invest456.0000对应列Month1To3_WorkBook_Audit_Invest.........一共1to2到1to1211个列.SELECTMonth1To2_WorkBook_Audi

sql 行转列 PIVOT 列转行 UNPIVOT

原文:sql 行转列 PIVOT 列转行 UNPIVOT 一: 现有表一(t_table1),想转为表二(t_table2)的格式. 表一: 年 公司 收入 2013 公司1 12 2013 公司2 22 2013 公司3 32 2012 公司1 42 2012 公司2 52 2012 公司3 62     表二: 年 公司1 公司2 公司3 2012 42 52 62 2013 12 22 32     可使用sql2005之后提供的PIVOT   具体操作如下:   select  *  f

sql列行转换-求助:sql 列变行,列对多列的问题

问题描述 求助:sql 列变行,列对多列的问题 现在数据结构 如下图 要变成 求大神 方法! 网上看到的方法: declare @sql varchar(8000) set @sql = 'select 名称 ,规格' select @sql = @sql + ', max(case 供应商 when ''' + 供应商 + ''' then 重量 else 0 end) [' + 供应商 + ']' from (select distinct 供应商 from #tb) as a set @s

sql行转列,(不写死)

问题描述 sql行转列,(不写死) 图一为数据结果: 想要图二的效果: 要求:不写死即不出现具体的查询出的数据的内容 解决方案 这个我没怎么搞过,不过你可以参照这个试一试.http://www.williamsang.com/archives/1508.html 解决方案二: 说实话不太明白你的意思. 行转列.你不规定列名.后台怎么知道把哪列转换成一行? 如果你想隐蔽的话.可以先用视图再用行转列 解决方案三: 不写死,只能用存储过程 或者 code 实现!单SQL应该是比较难!