>我在SSIS Conditional Split
中设置了以下条件,将所有无效地址发送到输出名称InvalidOutput
。
但是,我不断得到一些地址与Null
Address1 column
.我不知道为什么。
ISNULL(LEN(TRIM(Address1)) > 5) ||
ISNULL(LEN(TRIM(ZipCode)) == 5) ||
ISNULL(LEN(TRIM(City)) >= 5) ||
ISNULL(LEN(TRIM(Province)))
如果你的地址1为空,那么ISNULL(LEN(TRIM(ADDRESS1))将为True,但True>5将不是True。您需要将空值分开处理;例如
ISNULL(Address1) || LEN(TRIM(Address1)) > 5
就像Jayvee说的,你必须分开对待你的病情(在ISNULL和其他控件之间分开),你的病情将变成这样:
ISNULL(LEN(TRIM(Address1)) > 5) ||
ISNULL(LEN(TRIM(ZipCode)) == 5) ||
ISNULL(LEN(TRIM(City)) >= 5) ||
ISNULL(LEN(TRIM(Province)))
成为:
(ISNULL(Address1) || LEN(TRIM(Address1)) <= 5) ||
(ISNULL(ZipCode) || LEN(TRIM(ZipCode)) != 5) ||
(ISNULL(City) || LEN(TRIM(City)) < 5) ||
(ISNULL(Province) || LEN(TRIM(Province)) = 0 )