De gemakkelijkste manier om een overlap te vinden is als volgt:
IF EXISTS (SELECT 1 FROM table WHERE @myValueLo <= ExistingRangeEnd AND @myValueHi >= ExistingRangeStart)
-- Overlaps
ELSE
-- Doesn't overlap
Dit kan worden aangetoond dat het werkt als u de bovenstaande voorwaarde vergelijkt met elk van de balken in het onderstaande diagram:
Existing range: |-------------------|
Overlaps: |-------------| |------------|
|----------------------------------|
|-------------|
Not overlaps: |-----| |----|
in alle overlapgevallen zijn beide tests waar:
- de startdatum van het bestaande bereik is altijd vóór de einddatum van het nieuwe assortiment
- de einddatum van het bestaande bereik is na de startdatum van het nieuwe assortiment
Degenen die elkaar niet overlappen, slagen voor een van deze tests.