表A
ITEM MIX_ID MIX_NAME MIX_WEIGHT
1 FFF AESD 19.0
2 FFF DEDF 43.0
3 FFF SFSDF 53.0
5 RRR YHN 43.0
6 RRR HUJ 4.0
7 HHH TES 78.0 表B
INDEX NIX_ID NIX_NAME NIX_WEIGHT
1 FFF 1 2.0
2 FFF DES 19.0
3 FFF 1 232.0
4 FFF DES 32.0
5 RRR UYJ 232.0
6 GGG UUN 66.0
通过两个表,要查询得出下面结果:1 FFF AESD 19.0 FFF 1 2.0
2 FFF DEDF 43.0 FFF DES 19.0
3 FFF SFSDF 53.0 FFF 1 232.0
4 NULL NULL NULL FFF DES 32.0
5 RRR YHN 43.0 RRR UYJ 232.0
6 RRR HUJ 4.0 NULL NULL NULL
7 HHH TES 78.0 NULL NULL NULL
8 NULL NULL NULL GGG UUN 66.0
ITEM MIX_ID MIX_NAME MIX_WEIGHT
1 FFF AESD 19.0
2 FFF DEDF 43.0
3 FFF SFSDF 53.0
5 RRR YHN 43.0
6 RRR HUJ 4.0
7 HHH TES 78.0 表B
INDEX NIX_ID NIX_NAME NIX_WEIGHT
1 FFF 1 2.0
2 FFF DES 19.0
3 FFF 1 232.0
4 FFF DES 32.0
5 RRR UYJ 232.0
6 GGG UUN 66.0
通过两个表,要查询得出下面结果:1 FFF AESD 19.0 FFF 1 2.0
2 FFF DEDF 43.0 FFF DES 19.0
3 FFF SFSDF 53.0 FFF 1 232.0
4 NULL NULL NULL FFF DES 32.0
5 RRR YHN 43.0 RRR UYJ 232.0
6 RRR HUJ 4.0 NULL NULL NULL
7 HHH TES 78.0 NULL NULL NULL
8 NULL NULL NULL GGG UUN 66.0
解决方案 »
- 我想分别取出表里最新第4,5条纪录,有什么简便方法??
- 急!!!!!error 926 database 'msdb' cannot be opened
- 请教这个语句是什么意思
- 行转行的问题
- 高分SQL文求助——如何根据条件设定检索项目?
- 在触发器里可不可以捕捉修改表的用户
- 在SQL Server Management Studio Express用“SQL Server 身份验证”登录出错,请指教,谢谢
- 7761098 刚才结贴快了一点,接完才看见,补分
- 局域网(校园网)JDBC连接数据库的问题。。。
- 请教:如何保存inserted中数据?
- 请大家帮忙看看一个简单的规则问题!!!急
- 急急急,关系到吃粥吃饭的问题,望大家帮帮手
select * from A
full join B on A.ITEM=B.INDEX
insert A select 1,'FFF','AESD',19.0
union all select 2,'FFF','DEDF',43.0
union all select 3,'FFF','SFSDF',53.0
union all select 5,'RRR','YHN',43.0
union all select 6,'RRR','HUJ',4.0
union all select 7,'HHH','TES',78.0 create table B([INDEX] int,NIX_ID nvarchar(10),NIX_NAME nvarchar(10),NIX_WEIGHT decimal(10,1))
insert B select 1,'FFF','1',2.0
union all select 2,'FFF','DES',19.0
union all select 3,'FFF','1',232.0
union all select 4,'FFF','DES',32.0
union all select 5,'RRR','UYJ',232.0
union all select 6,'GGG','UUN',66.0 select ITEM=case when A.ITEM is null then B.[INDEX] else A.ITEM end,
*
from A
full join B on A.ITEM=B.[INDEX]
查询的结果是要把相同的NAME的行放在一起,如果当A,B表的相当NAME的行数不同时,就用NULL代替值.