Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何从两个表中提取并像下面的示例那样连接它们_Sql_Union - Fatal编程技术网

Sql 如何从两个表中提取并像下面的示例那样连接它们

Sql 如何从两个表中提取并像下面的示例那样连接它们,sql,union,Sql,Union,我有表A和表B。我需要这样的查询结果: 结果 Table A ............................. Table B +-----------+ .........................+-----------+ |Id | Sum1| .........................|Id |Sum2 | | 1 | 1500 | .........................| 1 | 2300|

我有表A和表B。我需要这样的查询结果:

结果

   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