【问题标题】:Delete lines based on two tables根据两个表删除行
【发布时间】:2017-12-28 11:31:34
【问题描述】:

我有一个问题,我有一个主表和另一个表。我在一张表(事故)中有一个名为 Accident_ID 的属性(值类似于 1、4、7、10 等)

在其他名为伤亡的表中,我有相同的属性 Accident_ID(但这里的值是这样的 1,2,2, 3,4,4,4,5,6,7,8 , 9, 10, 11 等等)。 => 有几个相同的 ID-s,因为每个事故可以有更多的伤亡。

问题是我如何删除表中伤亡行中的 ID-s 与表 Accidents 中不同的行(所以我想删除 ID-s 为 2、3、5、6 的表 Casualties 中的行, 8,9,11 等)=> 我有 100k ID-s,所以我不能手动操作。

感谢您的帮助。

【问题讨论】:

    标签: pentaho kettle data-integration pentaho-data-integration


    【解决方案1】:

    您不需要 PDI 来执行此操作。一个简单的 SQL 查询就可以解决您的问题。

    DELETE FROM Casualties WHERE Accident_ID NOT IN (SELECT DISTINCT Accident_ID FROM Accidents)
    

    【讨论】:

      【解决方案2】:

      使用Merge Diff 步骤。它比较两个流(或表)并告诉添加、删除、修改或相同的行。然后Filter 去掉你不想要的行。

      【讨论】:

      • 他在问如何删除,而不是过滤。
      猜你喜欢
      • 2017-01-16
      • 2019-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-19
      • 1970-01-01
      相关资源
      最近更新 更多