关于表的合一

jock_521 2003-09-27 04:06:22
表1
名称 数据1
张三 120
李四 150

表2
名称 数据2
张三 180
王五 200
怎么样得到表:
名称 数据1 数据2
张三 120 180
李四 150
王五 200
...全文
41 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
jock_521 2003-09-28
  • 打赏
  • 举报
回复
楼上的,对不起,我没有很好的测试你的,你的完全正确!谢谢你!
表1
名称 日期 数据
1999 2003-7-8 20
2000 2003-7-6 70
1999 2003-7-9 89
2001 2003-9-2 50
2000 2003-8-21 60
...
表2
名称 数据
1999 82
2000 70
2001 30
用表1进行对表2的修改(说明只能对表1的操作)得到
名称 数据
1999 50
2000 20
2001 75
yujohny 2003-09-27
  • 打赏
  • 举报
回复
create table 表1 (名称 varchar(10),数据1 int)
create table 表2 (名称 varchar(10),数据2 int)
insert into 表1 values('张三',120)
insert into 表1 values('李四',150)
insert into 表2 values('张三',180)
insert into 表2 values('王五',300)


select A.名称,isnull(cast(sum(A.数据1) as nvarchar),'') 数据1,
isnull(cast(sum(A.数据2) as nvarchar),'') 数据2
from
(select 名称,数据1,null as 数据2 from 表1
union all select 名称,null,数据2 from 表2) A
group by A.名称

测试结果:
李四 150
王五 300
张三 120 180

请问楼主,除了顺序不对以外还有什么不对的地方????????
jock_521 2003-09-27
  • 打赏
  • 举报
回复
不要看着很简单其实需要很强的功底啊!!!!不信你来看看啊!真的
jock_521 2003-09-27
  • 打赏
  • 举报
回复
怎么好像都不对啊?!!!
mjhnet 2003-09-27
  • 打赏
  • 举报
回复
select case when 名称A is null then 名称B else 名称A end 名称B, isnull(数据1,'') 数据1, isnull(数据2,'') 数据2

from

(
select 表1.名称 名称A, 表2.名称 名称B, 表1.数据1, 表2.数据2
from 表1 full outer join 表2
on 表1.名称 = 表2.名称
) 全表
yangwl 2003-09-27
  • 打赏
  • 举报
回复
呵呵,忘记了些东西,下面的应该可以了
t1为表1,name为名称,data为数据

select t1.name as name,t1.data as t1data,t2.data as t2data
from t1,t2
where t1.name=t2.name
union
select t1.name as name,t1.data as t1data,null as t2data
from t1
where t1.name not in(select t2.name from t2)
union
select t2.name as name,null as t1data,t2.data as t2data
from t2
where t2.name not in(select t1.name from t1)
yangwl 2003-09-27
  • 打赏
  • 举报
回复
select 名称,表1.数据1,表2.数据2
from 表1,表2
where 表1.名称=表2.名称
yujohny 2003-09-27
  • 打赏
  • 举报
回复
select A.名称,isnull(cast(sum(A.数据1) as nvarchar),'') 数据1,
isnull(cast(sum(A.数据2) as nvarchar),'') 数据2
from
(select 名称,数据1,null as 数据2 from 表1
union all select 名称,null,数据2 from 表2) A
group by A.名称

34,874

社区成员

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

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