4
我需要检测或者两个值是否为空,如果没有,他们是否不同。SSIS的条件性拆分NULL
我在分裂的条件是
(ISNULL(ModuleLevelId) && !ISNULL(LEV_CODE)) ||
(!ISNULL(ModuleLevelId) && ISNULL(LEV_CODE)) || (ISNULL(LEV_CODE) ? 0 - ModuleLevelId : (DT_I4)LEV_CODE) != ModuleLevelId
,但有人告诉我,我的表达导致空,即非布尔条件。
谁能帮我写,将工作,请的条件?
非常感谢
帕特里克
我已经分手这个条件并取得了第一个测试的其中任何一列空校验。 随后的条件然后执行转换和比较,并且我仍然收到消息'Source:Module Check for changes [3192] 描述:“输出”LevelId上的表达式“ModuleLevelId!=(DT_I4)LEV_CODE”changed( 5356)“评估为NULL,但”组件“检查更改”(3192)“需要布尔结果。 – Patrick
如果两个值都不为空,那么你可以尝试做什么? 'LEV_CODE - ModuleLevelId'? 如果其中一个值为空,您需要返回什么? – Justin
嗨@justin,谢谢你的回复。本质上,我试图检测两个值之间是否有变化,这将决定一些后续更新。问题是NULL值保持打破了比较 – Patrick