专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Sql Server

关联查询

发布时间:2010-05-20 14:01:29 文章来源:www.iduyao.cn 采编人员:星星草
关联查询求助
有a,b两表
a表:
id j1
1  100
2  200
3  300

b表:
id j2
1  10
1  20
1  30

结果表:
id j1   j2
1  100  60
1       10
1       20
1       30
2
3

求结果表关联查询语句

------解决方案--------------------
USE test
GO



---->生成表a
--
--if object_id('a') is not null 
-- drop table a
--Go
--Create table a([id] smallint,[j1] smallint)
--Insert into a
--Select 1,100
--Union all Select 2,200
--Union all Select 3,300
--
---->生成表b
--
--if object_id('b') is not null 
-- drop table b
--Go
--Create table b([id] smallint,[j2] smallint)
--Insert into b
--Select 1,10
--Union all Select 1,20
--Union all Select 1,30
--
--GO


/*
结果表:
id j1   j2
1  100  60
1       10
1       20
1       30
2
3
*/

SELECT 
a.id
,LTRIM(a.j1) AS j1
,LTRIM(SUM(b.j2)) AS j2 
FROM a 
INNER JOIN b ON a.id=b.id
GROUP BY a.id,a.j1
UNION ALL
SELECT 
a.id
,''
,ISNULL(LTRIM(b.j2),'') AS j2 
FROM a
LEFT JOIN b ON a.id=b.id
ORDER BY id
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: