主表和其他表之间的条件链接

时间:2016-10-21 12:23:40

标签: sql database ms-access powerbi

我在这里写作,因为我真的不知道如何寻找我的问题。我试过了,但我不确定我是否使用了正确的词......

我的问题很简单,我有一个包含许多列的主表(Orderbook),其中一个是Material_ID,它允许我将它链接到"材料"直接表(直到这里没有问题)。但是Material_ID列并不完整,过去,公司没有使用相同的工具,而是以另一种方式引入数据。因此,当Material_ID不存在时,会出现一个" X"而不是价值,我必须使用代码" Old_Material_ID"为了从旧材料中获取信息"表。

所以基本上我希望系统引用列" Material_ID"当有值时,如果没有,则从" Old_Material_ID"获取信息。并参考另一张表...你怎么称呼这样的东西?这很容易吗?我正在使用MS-Access和MS-PowerBI。

我可能会立即使用一些手工技巧来做到这一点,但我很想知道应该怎么做。

1 个答案:

答案 0 :(得分:0)

这应该让你知道如何做到这一点:

SELECT IIf(Material_ID='X',Old_Material_ID,Material_ID) AS MaterialID,
    Nz(NewTable.MaterialName,OldTable.MaterialName) AS MaterialName
FROM (Orderbook
    LEFT OUTER JOIN New_Material_Table ON Orderbook.Material_ID=New_Material_Table.Material_ID)
    LEFT OUTER JOIN Old_Material_Table ON Orderbook.Old_Material_ID=Old_Material_Table.Material_ID)