目录

Search

  1. 前言
  2. 使用转换
  3. 汇总器转换
  4. 自定义转换
  5. 自定义转换函数
  6. 数据屏蔽转换
  7. 数据屏蔽示例
  8. 表达式转换
  9. 外部过程转换
  10. 筛选器转换
  11. HTTP 转换
  12. Identity Resolution 转换
  13. Java 转换
  14. Java 转换 API 引用
  15. Java 表达式
  16. Java 转换示例
  17. 联接器转换
  18. 查找转换
  19. 查找缓存
  20. 动态查找缓存
  21. 规范器转换
  22. 等级转换
  23. 路由器转换
  24. 序列生成器转换
  25. 排序器转换
  26. 源限定符转换
  27. SQL 转换
  28. 在映射中使用 SQL 转换
  29. 存储过程转换
  30. 事务控制转换
  31. 联合转换
  32. 非结构化数据转换
  33. 更新策略转换
  34. XML 转换

转换指南

转换指南

处理多项匹配

处理多项匹配

查找转换会根据您在转换中配置的条件查找值。如果查找条件不基于唯一的键,或者查找源非规范化,则集成服务可能在查找源或查找缓存中找到多个匹配项。
您可以将查找转换配置为通过以下方式处理多个匹配项:
  • 使用第一个匹配值,或使用最后一个匹配值。
    您可以将转换配置为返回第一个匹配值或最后一个匹配值。第一个值和最后一个值是在查找缓存中找到的与查找条件匹配的第一个值和最后一个值。在缓存查找源时,集成服务会为查找缓存中的每个列生成 ORDER BY 子句,以确定缓存中第一个行和最后一个行。然后,集成服务会按升序排序每个查找源列。
    集成服务按数字升序(例如 0 到 10)排序数字列。它会按从一月到十二月以及从当月第一天到最后一天的顺序排序日期/时间列。集成服务会根据为会话配置的排序顺序对字符串列排序。
  • 使用任何匹配值
    。您可以将该查找转换配置为返回匹配查找条件的任意值。将查找转换配置为返回任意匹配值时,该转换将返回匹配查找条件的第一个值。该转换会根据键端口而不是所有查找转换端口创建索引。使用任何匹配值时,会提高性能,因为对索引行的处理更简单。
  • 使用所有值
    。查找转换会返回所有匹配的行。要使用此选项,必须在创建查找转换时将其配置为返回所有匹配项。该转换会成为主动转换。创建转换后,不能在被动与主动模式之间进行更改。
  • 返回错误。
    查找转换使用静态缓存或没有缓存时,集成服务会将行标记为错误。默认情况下,查找转换将该行写入会话日志并将错误计数加一。如果查找转换具有动态缓存,集成服务会在遇到多个匹配项时处理会话失败。集成服务缓存查找表或查找重复的键值时,会话会失败。此外,如果将查找转换配置为在更新时输出旧值,查找转换会在遇到多个匹配项时返回错误。该转换会根据键端口而不是所有查找转换端口创建索引。