rdlc报表 行列转换 谢谢大家先

荒牧 2011-09-11 12:02:02
采用 .rdlc报表
数据源为两张表,格式如下
Tb_Student

学号 姓名
01 张三
02 李四

Tb_Score

学号 科目 成绩
01 语文 78
01 数学 95
01 英语 56
02 语文 75
02 数学 94
02 英语 53

期望生成报表格式为
学号 姓名 语文 数学 英语 总分
01 张三 78 95 56 239
02 李四 75 94 53 232

要求:rdlc的数据源不使用Sql的行列转换方式,行列转换在报表内部实现,望各位大侠附上解决办法
...全文
187 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ajaxtop 2011-09-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 luols 的回复:]
添加矩阵,我先以你的Tb_Score表为例:

将 学号字段拖到“行”处,科目字段拖到“列”处,成绩字段拖到“数据”处,然后右击“列”单元格选择“小计”,如图示:


小计后



运行后:
[/Quote]

+
大Y 2011-09-22
  • 打赏
  • 举报
回复
  四楼的非常正确。 顺便也讲了怎么应用。

  矩阵,自己搞两个例子出来就行了


 
阿双2009 2011-09-14
  • 打赏
  • 举报
回复
添加矩阵,我先以你的Tb_Score表为例:

将 学号字段拖到“行”处,科目字段拖到“列”处,成绩字段拖到“数据”处,然后右击“列”单元格选择“小计”,如图示:


小计后



运行后:
荒牧 2011-09-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zjw14730 的回复:]

declare @sql varchar(1000)
set @sql='select student_id'
select @sql= isnull(@sql,'')+ ', sum( case subjectName when '''+ subjectName+''' then number else 0 end) as '''+subjectName+''''
From s……
[/Quote]

这是Sql的行列转换方式,请问如何在不使用这种方法的情况下,在报表内部实现?
山东蓝鸟贵薪 2011-09-12
  • 打赏
  • 举报
回复
C#方面报表,我也在学习中,
帮你顶顶先............
zjw14730 2011-09-12
  • 打赏
  • 举报
回复
declare @sql varchar(1000)
set @sql='select student_id'
select @sql= isnull(@sql,'')+ ', sum( case subjectName when '''+ subjectName+''' then number else 0 end) as '''+subjectName+''''
From source group by subjectName
select @sql=@sql+'From source group by student_id'
exec(@sql)
print @sql

4,819

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧