读书人

sql查询结果横向展示

发布时间: 2012-12-14 10:33:08 作者: rapoo

sql查询结果横向显示
数据库表:FL
字段名称:A,B,C



查询语句:
declare @sql varchar(8000) set @sql = 'select A AS 台号' select @sql = @sql + ' , max(case B when ''' + B + ''' then C else 0 end) [' + B + ']' from (select distinct B,D from fl ) as a order by D set @sql = @sql + ' from fl group by A' exec(@SQL)

横向显示结果:



---------------------问题--------------------
FL数据库表中再添加两个字段D(排序),E(日期)


问题:怎样实现根据D字段排序 和 E字段指定日期横向显示?

[最优解释]


declare @sql varchar(8000)
set @sql = 'select A AS 台号'
select @sql = @sql + ' , max(case B when ''' + B + ''' then C else 0 end) [' + B + ']'
from (select distinct B,D from fl ) as a order by D
set @sql = @sql + ' from fl where 日期='+quotename('2012-5-7','''')+' group by A' exec(@SQL)

[其他解释]
不懂,求解释
[其他解释]
求解释,不懂!
[其他解释]
行列转化!!
[其他解释]
补充说明:怎样在以下语句中加上一个日期条件(日期是E字段),如:我只想查看2012-5-7日的数据

declare @sql varchar(8000) set @sql = 'select A AS 台号' select @sql = @sql + ' , max(case B when ''' + B + ''' then C else 0 end) [' + B + ']' from (select distinct B,D from fl ) as a order by D set @sql = @sql + ' from fl group by A' exec(@SQL)
[其他解释]
能不能不要帖图片上 直接把数据复制上来行不 还有你期待的结果长什么样子
[其他解释]
非常感谢啊!

读书人网 >SQL Server

热点推荐