KETTLE-转换-查询组件
查询组件
Database join
完全自定义查询组件
- Number of rows to return为限制查询返回的条数
- Outer join?为是否要外连接,不选中则查询必须查询到值,选中则允许查询不到
- Replace variables为替换变量方式,’${var}’
- The parameter to use为参数列表,用’?'代替,两者个数和顺序必须一致
Database lookup
带缓存的单条查询组件
- Enable cache为是否缓存查询的数据,下次查询同个key时从内存获取而非数据库,适用于变化不大的表
- Cache size in rows为缓存的条数,0为缓存所有
- Load all data from table为缓存表的所有数据,不适合大表,除非内存充足
- Do not pass the row if the lookup fails为忽略查询不到的错误
- Fail on multiple results为查询到多个结果抛出错误
- Order by为如果返回多个结果,则按某个返回字段排序来选择哪个结果
总结
- Database join组件支持多条结果查询
- Database lookup组件支持缓存、单条结果查询
- Database lookup组件有个问题,用mysql会中文乱码,sqlserver和oracle都不会
- Database lookup组件的Load all data from table,会将有右边空格的数据做trim再缓存到内存