猿问

将SQL查询结果合并

现在有两个SQL语句,并且两个语句查询的结果列数不同,现在要将两个结果合并为一个,如何实现?比如 表A,里面的字段有a1,a2,a3,表B里的字段有b1,b2,现在想得到的结果是a1,a2,a3,b1,b2,这个SQL如何实现??

一只名叫tom的猫
浏览 943回答 6
6回答

12345678_0001

使用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

拉莫斯之舞

使用join呗

眼眸繁星

select * from A union select * from B,但 union 會要求兩個表的欄位數量要相同,所以缺的要用 NULL 來填。

红糖糍粑

wm_concat、多行变列问题

炎炎设计

软件开发视频大讲堂:SQL Server 从入门到精通(附光盘)  SQL Server 2012 T-SQL基础教程  从零开始学SQL Server(附DVD光盘1张) 

MM们

用union可以,注意用union的时候要保证字段的个数都要相同,像你说的这个,最简单的,只需要用null或者 引号  代替即可。select a1,a2,a3 from A  union select b1,b2, ' ' from B
随时随地看视频慕课网APP

相关分类

SQL Server
我要回答