Cara termudah untuk menemukan tumpang tindih adalah seperti ini:
IF EXISTS (SELECT 1 FROM table WHERE @myValueLo <= ExistingRangeEnd AND @myValueHi >= ExistingRangeStart)
-- Overlaps
ELSE
-- Doesn't overlap
Ini dapat terbukti berfungsi jika Anda membandingkan kondisi di atas dengan masing-masing batang dalam diagram di bawah ini:
Existing range: |-------------------|
Overlaps: |-------------| |------------|
|----------------------------------|
|-------------|
Not overlaps: |-----| |----|
dalam semua kasus tumpang tindih, kedua tes ini benar:
- tanggal mulai dari rentang yang ada selalu sebelum tanggal akhir dari rentang baru
- tanggal akhir dari rentang yang ada adalah setelah tanggal mulai dari rentang baru
Mereka yang tidak tumpang tindih gagal satu atau lain dari tes ini.