We add the filter like so:
(posts.created_at < '2019-05-03 00:00:00') AND (posts.created_at > '2019-05-01 00:00:00')
What is happening here is that we always aggregate results:
If a term hits once on topic X on Monday and once on topic X on Wednesday then we only show the topic from Wednesday. If you need to dig through all the matches on topic X you always have search within topic.