如何才能使SSIS查找转换忽略字母大小写?

问题描述 投票:7回答:4

希望这很容易解释,但我在我的一个SSIS包中进行了查找转换。我用它来查找维度表中的emplouyee记录的id。但是我的问题是一些源数据在所有大写中都有员工姓名(例如:CHERRERA),并且使用的比较数据都是小写的(例如:cherrera)。

对于不是100%情况类似的记录,查找失败(例如:cherrera vs cherrera工作正常 - cherrera vs CHERRERA失败)。有没有办法在字符串/ varchar数据类型上进行查找转换忽略大小写?

sql ssis lookup business-intelligence
4个回答
13
投票

我认为没有办法使转换不区分大小写,但是您可以修改转换的SQL语句,以确保源数据与比较数据的大小写匹配,方法是使用LOWER()字符串函数。


7
投票

将查找转换的CacheType属性设置为Partial或None。

查找比较现在将由SQL Server完成,而不是由SSIS查找组件完成,并且不再区分大小写。

有关更多信息,请参阅here


1
投票

您必须更改源以及查找数据,两者都应该是相同的案例类型。


1
投票

基于这个Microsoft Article

“查找转换执行的查找区分大小写。为避免由数据中的大小写差异引起的查找失败,请首先使用字符映射转换将数据转换为大写或小写。然后,在大写或小写中包含UPPER或LOWER函数。生成引用表的SQL语句“

要阅读有关字符映射转换的更多信息,请点击此链接“

© www.soinside.com 2019 - 2024. All rights reserved.