G
Guest
It seems the general consensus is that Iif statements aren't very efficient.
I'm having a hard time, though, trying to figure out what to use instead.
I've seen some posts on Switch, but I'm still uncertain how to use Switch.
Can someone enlighten me please? I have several Iif in an append query and
it is taking about 45 minutes to run. (took the same amt. of time when it
was a make table query)
Thanks you so much!
A couple of examples of my Iif's statements are:
SystemDoc:
nz(IIf([ST]="6","",IIf([M_B]="A",dhSubtractWorkDaysA([LTA1],[LaunchDate]),IIf([M_B]="W",dhSubtractWorkDaysA([LTW2],[MatDueDateCalc]),""))))
and
MCS_TP: IIf([ST]<>"6",[MCSOne],Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartOne] & "' AND [ST] =
'1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartTwo] & "' AND
[ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartThree] &
"' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" &
[PartFour] & "' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartFive] & "' AND [ST] =
'1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartSix] & "' AND
[ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartSeven] &
"' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" &
[PartEight] & "' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartNine] & "' AND [ST] = '1'"),[MCSOne]))))))))))
I'm having a hard time, though, trying to figure out what to use instead.
I've seen some posts on Switch, but I'm still uncertain how to use Switch.
Can someone enlighten me please? I have several Iif in an append query and
it is taking about 45 minutes to run. (took the same amt. of time when it
was a make table query)
Thanks you so much!
A couple of examples of my Iif's statements are:
SystemDoc:
nz(IIf([ST]="6","",IIf([M_B]="A",dhSubtractWorkDaysA([LTA1],[LaunchDate]),IIf([M_B]="W",dhSubtractWorkDaysA([LTW2],[MatDueDateCalc]),""))))
and
MCS_TP: IIf([ST]<>"6",[MCSOne],Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartOne] & "' AND [ST] =
'1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartTwo] & "' AND
[ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartThree] &
"' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" &
[PartFour] & "' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartFive] & "' AND [ST] =
'1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartSix] & "' AND
[ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" & [PartSeven] &
"' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] = '" &
[PartEight] & "' AND [ST] = '1'"),Nz(DLookUp("[MCSOne]","SASQueryOne","[CP] =
'" & [PartNine] & "' AND [ST] = '1'"),[MCSOne]))))))))))