相同的执行时间,不同时间基于SQL条件?我该如何解决?

我的数据库有7M条带有30多个变量的记录,以下查询是每天过滤数据,这大约需要12分钟才能返回结果

select customername, productname from xyztable where (datatime between '2019-05-17 00:00:00.000'
and '2019-05-18 00:00:00.000')

我还需要根据以下每小时数据过滤相同的数据,

select customername, productname from xyztable where (datatime between '2019-05-17 00:00:00.000'
and '2019-05-17 01:00:00.000')

我期望每小时查询结果更快,因为数据会很少。但是,这与每天花费的时间相同。

因此,基本上每小时和每天查询都需要12分钟才能返回结果。

无论如何,我可以使每小时的结果比每天的结果更快吗?