Page History
...
Bemærk, at der i JOIN-betingelsen også forekommer en "OR (FromDate =" (linje 9). Dette skyldes, at vi ud over historikken for det angivne dato-interval, også har behov for at sikre os, at seneste gyldige SorEntity - uanset FromDate - også altid er med i indlæsningen. Som eksempel kunne man forestille sig en SorEntity, hvor seneste FromDate lå tre år tilbage, og derfor vil den ikke ligge inden for "FromDate >= :date_interval", hvis ":date_interval" kun var to år. Til den inderste query tilføjes "AND ToDate is NULL", da en SorEntity med start udenfor intervallet kun har relevans, hvis den stadig er aktiv. Her kunne man også overveje at sætte den sidste betingelse til "AND (ToDate is NULL OR ToDate > NOW())", for at få dem der stadig er aktive, der ikke har været ændret i perioden. I praksis har det dog givet det samme antal rækker på produktionsdata (muligvis fordi FromDate og ToDate ofte ligger ret tæt, for de inaktive), men med ringere indlæsningsperformance, så det er derfor fravalgt i den nuværende version.
...