admin

从两个表中选择,其中链接列可以为空

sql

我在数据库中有两个表。表1包含一个可能为NULL的订单号。表二包含所有订单数据(包括订单号)。

现在,我想从表1中选择所有列,并从表2中选择所有订单数据。因此,如果表一中的某个条目不包含此订单号,则所有其他列均应为null。但是,如果确实包含订单号,我希望将其链接到第二张表并选择这些数据。

输出应该是这样的:

column1tab1 column2tab1 order_number product amount
 xx            yy            123      p1      2
 xx            yy            456      p3      4
 xx            yy            NULL    NULL    NULL
 xx            yy            789      p2      1
 etc...

我尝试了不同的方法,但是我只获得了所有带有订单号的行或全部为null的行,但无法同时获得它们。有人知道解决方案吗,所以我可以在一个查询中做到这一点?


阅读 145

收藏
2021-06-07

共1个答案

admin

你尝试了什么?一个简单的左联接就可以解决问题。例子:

select *
from orders o left join orderdata od on o.orderId=od.orderid
2021-06-07