SQL查询合并怎么写?

2017-05-06 02:36
item表:
id  name  quarter
1  aaa   1
2  bbb   1
3  ccc   2
4  ddd   1
wplan表:
id  fid  cap  week
1  3   a111  16
2  2   a222  16
3  3   a333  17
4  2   a444  17
================
合并结果表:
name  quarter  cap  week
aaa   1 
bbb   1    a444  17
ddd   1
===============
合并显示:
1. item表:quarter=1全部显示
2. wplan表:week=17,fid=item表id

回复讨论(解决方案)

--测试数据
if not object_id(N'Tempdb..#item') is null
	drop table #item
Go
Create table #item([id] int,[name] nvarchar(23),[quarter] int)
Insert #item
select 1,N'aaa',1 union all
select 2,N'bbb',1 union all
select 3,N'ccc',2 union all
select 4,N'ddd',1
GO
if not object_id(N'Tempdb..#wplan') is null
	drop table #wplan
Go
Create table #wplan([id] int,[fid] int,[cap] nvarchar(24),[week] int)
Insert #wplan
select 1,3,N'a111',16 union all
select 2,2,N'a222',16 union all
select 3,3,N'a333',17 union all
select 4,2,N'a444',17
Go
--测试数据结束
SELECT  a.name ,
        a.quarter ,
        b.cap ,
        b.week
FROM    #item a
        LEFT JOIN #wplan b ON b.fid = a.id
                              AND b.week = 17
WHERE   a.quarter = 1


SQL查询合并怎么写?0