使用 Talend ETL 工具,如何将不存在的记录从 Excel Sheet 插入到 MySQL table?

Using Talend ETL tool, How to insert a non existing record to MySQL table from Excel Sheet?

我有一个 excel sheet 列,我只需要在其中插入不存在的记录。 示例:大学列表
1. Sri Krishnadevaraya 大学
2. Sri Krishnadeveraya 大学(SKU)
3. 圣杰罗姆大学
4. St.Peters大学

table 已经有 "St.Peters University" 所以我需要插入
1. Sri Krishnadevaraya 大学
2. Sri Krishnadeveraya 大学(SKU)
3.圣杰罗姆大学

SELECT  *
FROM    *
WHERE   NOT EXISTS
        (
        SELECT  * 
        FROM    *
        WHERE   * = *
        )

不太熟悉 Talend,但是这个 post 非常有用:

Talend Insert where not exists

如果您写入 MySQL,您正在使用 tMySQLOutput 组件 - 我只是在这里假设,因为没有关于作业布局的任何信息。

由于 MySQL 具有名为 insert ignore 的功能,您应该关注

  • 设置一个好的有效主键(忽略主键是否存在的检查)
  • 将插入策略设置为在组件中插入忽略

在 talend 中,您将使用组件 tfileinput-->tlogrow-->tmap--tlogrow-tmysqloutput。任何过滤器/转换/业务逻辑都可以在 tmap 组件中完成。