请问怎么把2个动态转换的查询结果联合到一起来

nwznwz 2008-03-21 09:35:20
还是那个老例子
这是第一张表
张三 语文 80
张三 数学 86
张三 英语 75
李四 语文 80
李四 数学 85
李四 英语 80

第2张表是
张三 物理 68
张三 化学 88
李四 物理 77
李四 化学 82


2个表都经过动态转换exec(@sql)的那转换并显示出来
第一张表显示出来
语文 数学 英语
张三 80 86 75
李四 80 85 80



第二张表显示出来
物理 化学
张三 68 88
李四 77 82



最后要的效果就是把2个查询结果合并起来变成
语文 数学 英语 物理 化学
张三 80 86 75 68 88
李四 80 85 80 77 82


注意最开始是2张表,哪位能够告诉

...全文
106 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
nwznwz 2008-03-21
  • 打赏
  • 举报
回复
那2个转化的不是表呢,我的程序是
declare @sql varchar(8000)
set @sql='select name[姓名]'
select @sql=@sql+','+subject+'=max(case subject when '''+subject+''' then result else 0 end)'
from (select distinct subject from cj)a
exec(@sql+',号码 from cj a,b where a.name=b.姓名 group by name,号码')

declare @sql2 varchar(8000)
set @sql='select name2[姓名]'
select @sql=@sql+','+subject2+'=max(case subject2 when '''+subject2+''' then result2 else 0 end)'
from (select distinct subject2 from cj2)a
exec(@sql+',号码 from cj2 a,b where a.name2=b.姓名 group by name2,号码')


我就是要把这2个结合起来
cxmcxm 2008-03-21
  • 打赏
  • 举报
回复
两原表都是相同结构,先用union all合并之后再按转换规则作转换,不就可得出最后的表来吗?!
liangCK 2008-03-21
  • 打赏
  • 举报
回复
select 1表.*,2表.*
from 1表,2表
where 1表.姓名=2表.姓名

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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