如何将三个查询的结果合并到一个数据集中?交叉申请还是加入?
create table tbl_A
(
Dept varchar(5),
DocCountA int
);
create table tbl_b
(
Dept varchar(5),
DocCountB int
);
create table tbl_c
(
Dept varchar(5),
DocCountC int
);
insert into tbl_A
values ('XX',12),('YY',14),('ZZ',16)
insert into tbl_b
values ('XX',20),('YY',25),('ZZ',27)
insert into tbl_c
values ('XX',30),('YY',35)
select * from tbl_A
select * from tbl_B
select * from tbl_C
**tbl_A**
Dept DocCountA
XX 12
YY 14
ZZ 16
**tbl_B**
Dept DocCountB
XX 20
YY 25
ZZ 27
**tbl_C**
Dept DocCountC
XX 30
YY 35
结果
Dept DocCountA DocCountB DocCountC
XX
YY
ZZ
表 C 有两个结果 ZZ 将为空白
这使用两个查询 三个会很棒!
select * from tbl_A A
cross apply
(
select B.DocCountB from tbl_b B
Where B.Dept=A.Dept
) sod