使用Talend ETL工具,如何从Excel Sheet中将非现有记录插入MySQL表?

时间:2017-10-26 13:29:58

标签: mysql talend

我有一个Excel工作表列,其中我只需要插入非现有记录。 示例:大学列表
1. Sri Krishnadevaraya大学 2. Sri Krishnadeveraya大学(SKU)
3.圣杰罗姆大学 4.圣彼得大学

表已经有“圣彼得大学” 所以我需要插入
1. Sri Krishnadevaraya大学 2. Sri Krishnadeveraya大学(SKU)
3.圣杰罗姆大学。

3 个答案:

答案 0 :(得分:1)

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

对Talend不太熟悉,但这篇文章非常有用:

Talend Insert where not exists

答案 1 :(得分:1)

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

由于MySQL具有名为插入忽略的功能,因此您应该专注于

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

答案 2 :(得分:1)

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