是否可以在 SSIS 中加入合并相同的数据库列?
Is it possible to join merge same databases columns in SSIS?
我有一个名为 Customer 的数据库,我有 3 个重要的表,它们是:CustomerID、CustomerToBillID 和 CustomerName。
假设我们有一个数据集:
CustomerID = 1 with, CustomerName = John
CustomerID = 2 CustomerName = Bert
And the CustomerToBillID = 2 on both (so Bert only pays)
有没有办法让我有两个 CustomerName 列?例如我想
将 CustomerID 与 CustomerName 结合使用,将 CustomerToBillID 与 CustomerName 结合使用。
我尝试使用 CustomerName 的数据转换来生成 CustomerNameOne 并在按 CustomerToBillID 排序后合并,但这行不通,因为他会对同一数据库中的两个 CustomerName 感到困惑,只选择一个 CustomerID 或CustomerToBillID,我在 virtual studio 2017 SSDT 中使用 SSIS。
如果需要,我可以提供更多信息。
编辑: 我想输出以下内容:
之前
之后。
红圈有错误的数据。它具有 CustomID 454 而不是 401
客户现在有 CustomerName 并且 Bill to customer 有列 CustomerNameOne。
编辑 2:
这就是目前的情况,红色圆圈是相同的 databases/tables,所以我认为从第二个中获取 CustomerName 列会让人感到困惑?
编辑 3:
为了让它更简单一些我想这样做,但这不起作用,因为当 CustomerID = 1 命中 CustomerToBill = 1 时,他将采用 CustomerID = 129 并将 1 也更改为 id 129,例如以下数据结果图片:
红线应该是(总部)不是(矿山)
编辑 4:
至于评论,我按照您的要求做了,只有蓝线给出了良好的输出,但红线与 BillTOID 不对应,它只是说了 CustomerID 的名称。
为此,从两个合并联接开始,一个使用 CustomerID 到 CustomerName,另一个使用 CustomerBillToID 和 CustomerName。在此之后,使用标识该行(客户、订单等)的任何唯一键添加第三个 Merge Join,然后您可以从先前的联接中仅输出必要的列,包括每个 CustomerName。您可能还想适当地为每个 CustomerName 起别名。
我有一个名为 Customer 的数据库,我有 3 个重要的表,它们是:CustomerID、CustomerToBillID 和 CustomerName。 假设我们有一个数据集:
CustomerID = 1 with, CustomerName = John
CustomerID = 2 CustomerName = Bert
And the CustomerToBillID = 2 on both (so Bert only pays)
有没有办法让我有两个 CustomerName 列?例如我想 将 CustomerID 与 CustomerName 结合使用,将 CustomerToBillID 与 CustomerName 结合使用。
我尝试使用 CustomerName 的数据转换来生成 CustomerNameOne 并在按 CustomerToBillID 排序后合并,但这行不通,因为他会对同一数据库中的两个 CustomerName 感到困惑,只选择一个 CustomerID 或CustomerToBillID,我在 virtual studio 2017 SSDT 中使用 SSIS。
如果需要,我可以提供更多信息。
编辑: 我想输出以下内容:
编辑 2:
编辑 3:
为了让它更简单一些我想这样做,但这不起作用,因为当 CustomerID = 1 命中 CustomerToBill = 1 时,他将采用 CustomerID = 129 并将 1 也更改为 id 129,例如以下数据结果图片:
红线应该是(总部)不是(矿山)
编辑 4:
至于评论,我按照您的要求做了,只有蓝线给出了良好的输出,但红线与 BillTOID 不对应,它只是说了 CustomerID 的名称。
为此,从两个合并联接开始,一个使用 CustomerID 到 CustomerName,另一个使用 CustomerBillToID 和 CustomerName。在此之后,使用标识该行(客户、订单等)的任何唯一键添加第三个 Merge Join,然后您可以从先前的联接中仅输出必要的列,包括每个 CustomerName。您可能还想适当地为每个 CustomerName 起别名。