Мне нужен простой SQL, чтобы выполнить следующее:
Проблема:
Когда в койке с бензином заканчивается топливо, администратор отмечает DateTime (RunOutDate), когда закончилось топливо, а также отмечает DateTime (ResupplyDate), когда подача топлива была снова включена.
Мне нужно создать отчет о том, сколько дней в койке закончилось топливо.
например.
1/1/1 с 10:10 до 1/1/1 10:50 следует считать как 1
01.01.110 10:10 - 01.02.07 07:20 следует считать как 2
01.01.18 23:55 - 01.02.100:10 следует считать как 2
Я не могу использовать часы с использованием DateDiff, поскольку 24 часа могли занять 2 дня.
TIA


РАЗНДАТ, используя день, затем добавьте 1.
DATEDIFF использует полночь для подсчета дней, поэтому вы получите 0, 1, 1 для каждого примера выше. Затем добавьте 1.
DATEDIFF(day, '16 Dec 2008 10:10', '16 Dec 2008 10:50') + 1
DATEDIFF(d, RunOutDate, ResupplyDate) + 1
Помните, что DATEDIFF всегда считает количество ГРАНИЦ, которые вы пересекаете. Для дней (первый аргумент d) он подсчитывает, сколько раз часы прошли полночь. Итак, чтобы подсчитать количество покрытых дней, вы просто добавляете 1.