现在有两个SQL语句,并且两个语句查询的结果列数不同,现在要将两个结果合并为一个,如何实现?比如 表A,里面的字段有a1,a2,a3,表B里的字段有b1,b2,现在想得到的结果是a1,a2,a3,b1,b2,这个SQL如何实现??
6 回答
12345678_0001
TA贡献1802条经验 获得超5个赞
使用cross join
declare @p table(a1 int,a2 int) declare @t table(c1 char(1),c2 char(1),c3 char(3)) insert into @p values(1,2),(2,3) insert into @t values('a','b','c') select * from @p cross join @t
眼眸繁星
TA贡献1873条经验 获得超9个赞
select * from A union select * from B,但 union 會要求兩個表的欄位數量要相同,所以缺的要用 NULL 來填。
炎炎设计
TA贡献1808条经验 获得超4个赞
MM们
TA贡献1886条经验 获得超2个赞
用union可以,注意用union的时候要保证字段的个数都要相同,像你说的这个,最简单的,只需要用null或者
引号 代替即可。select a1,a2,a3 from A union select b1,b2, ' ' from B
- 6 回答
- 0 关注
- 942 浏览
添加回答
举报
0/150
提交
取消