По моему опыту, индексы часто не используются для условий больше или меньше, потому что диапазон является открытым, и, таким образом, будет O (n) совпадающих строк для таблицы с n строками.
Однако между интервалами обычно делают индексы, так как диапазон ограничен, поэтому будет O (1) совпадающих строк, поэтому вы можете использовать этот трюк:
where start_date between 'some starting date' and 'some end date'
and end_date beween 'some starting date' and 'some end date'
Посколькудата окончания не может быть раньше даты начала, эти сравнения по-прежнему имеют смысл.