, поскольку даты доступа эффективно хранятся как DOUBLE, я бы порекомендовал преобразовать их в тип с плавающей запятой SQL для обработки любых неполных дней
(cast([Promise Date] as float) - cast([Date Recieved] as float))/100
посмотрите на следующий пример, различные идеи здесь дают совершенно разные ответы
declare @x as datetime = '19960420 15:05:48';
declare @y as datetime = '19960423 18:09:23';
select (CAST(@y as float) - CAST(@x as float)) / 100
select (CAST(@y as int) - CAST(@x as int)) / 100
select datediff(day,@x,@y) / 100
select cast(datediff(day,@x,@y) as float) / 100
Access должен обрабатывать даты как числа с плавающей запятой, дробная часть представляет время, а целочисленная часть представляет дни