I have a QlikView document containing the tables shown in the image below. For the join between the HCDs and LQL tables I need to join by the LQLJoin fields but I also need to be able to limit it to where HCDs.[Admin Date] is between LQL.IMP_DATE and LQL.END_DATE the IMP_DATE field is always populated but the END_DATE field can be null.
That's sounds like you need to use the Intervalmatch function. See this blog post: IntervalMatch.
If there are intervals for each LQLJoin value then you need to use the extended intervalmatch syntax and use the LQLJoin field as the third parameter to the intervalmatch function.