Sql 如何从两个表中提取并像下面的示例那样连接它们
我有表A和表B。我需要这样的查询结果: 结果Sql 如何从两个表中提取并像下面的示例那样连接它们,sql,union,Sql,Union,我有表A和表B。我需要这样的查询结果: 结果 Table A ............................. Table B +-----------+ .........................+-----------+ |Id | Sum1| .........................|Id |Sum2 | | 1 | 1500 | .........................| 1 | 2300|
Table A ............................. Table B
+-----------+ .........................+-----------+
|Id | Sum1| .........................|Id |Sum2 |
| 1 | 1500 | .........................| 1 | 2300|
| 1 | 2500 | .........................| 1 | 1500|
| 1 | 1300 | .........................+-----------+
+-----------+
我需要使用id进行过滤,结果应该像第三个表一样,在这里我可以从表A和表B中划分左列和右列。
请帮忙。我尝试了其他例子,但没有成功 如果需要该输出,可以使用:
+-----------------------+
|Id | Sum1| |Sum2 |
| 1 | 1500 | |......0|
| 1 | 2500 | |......0|
| 1 | 1300 | |......0|
| 1 | 0....| | 2300 |
| 1 | 0....| | 1500 |
+-----------------------+
不知道为什么它会是一个有用的结果集,但是…您想在第三个表中划分左列和右列吗?我现在可以告诉你答案:0,未定义。我根本不知道你想在这里做什么。我需要像结果一样给我所有相同的id,这取决于sum1是否有值,sum2是否为空,如果sum2有值,sum1是否为空。我需要为我的项目,所以用户看到这个结果。就像答案一样,您的所有id值都是
1
,这不是一个非常有用的示例。您想用相同的id连接表A
和表B
的结果,还是只附加两个表的结果?请编辑以澄清。我只想用相同的Id连接表A和表B的结果。我在表中有多个Id。它可以工作,当我有更多不同Id的字段时,它用于过滤,当我只想用Id=1进行过滤时,它只给我Id=1的结果,这样我就有了我需要的。非常感谢。
SELECT ID, Sum1, 0 AS Sum2
FROM TableA
UNION ALL
SELECT ID, 0 AS Sum1, Sum2
FROM TableB