我有两种观点。
查看椰子。我从表中得到了这个,显示了一个人花在购买椰子上的全部金额。
+---------+---------+
| RollNo | Coconut |
+---------+---------+
| 341401 | NULL |
| 341402 | NULL |
| 341403 | NULL |
| 341405 | 30 |
| 341406 | NULL |
| 341407 | NULL |
| 341408 | 30 |
| 341409 | NULL |
---------------------
查看coconut2。这是我从同一张桌子得到的,但约会有约束。
+---------+----------+
| RollNo | Coconut |
+---------+----------+
| 341405 | 20 |
| 341408 | 15 |
+---------+----------+
现在我希望最终输出像
+---------+---------+
| RollNo | Amount |
+---------+---------+
| 341401 | NULL |
| 341402 | NULL |
| 341403 | NULL |
| 341405 | 20 |
| 341406 | NULL |
| 341407 | NULL |
| 341408 | 15 |
| 341409 | NULL |
---------------------
这意味着我希望显示所有卷号。在第二个视图中不存在任何滚动编号的数量应在输出中视为空。
答案 0 :(得分:0)
你试过FULL OUTER JOIN吗?
SELECT * FROM coconut v1 FULL JOIN coconut2 v2 ON v1.RollNo = v2.RollNo
理想情况下,您应将椰子列命名为椰子!
答案 1 :(得分:0)
经过一段时间的努力,我得到了这个答案。
select c.RollNo,c2.coconut from coconut c left join coconut2 c2 on c.ROllNo=c2.RollNo;