#mysql #datetime #date #time
#mysql #дата и время #Дата #время
Вопрос:
Я пытаюсь обновить поле на основе других полей подряд, и мне нужна помощь — я продолжаю получать нежелательные результаты.
У меня есть три поля
start_time DateTime
pause_time DateTime
end_time DateTime
То, что я хотел бы сделать, это переместить время окончания вперед, в основном выполнив end_time = (end_time (NOW() - pause_time))
.
Итак, я выясняю, сколько времени прошло с момента паузы, и NOW() затем добавляю к текущему end_time, тем самым продвигая его вперед.
Должен ли я пытаться искать неожиданное поведение, например, время паузы позже, чем СЕЙЧАС () или что-то в этом роде? Как я мог это сделать? В идеальной ситуации время начала и время паузы были бы в прошлом, а end_time — в будущем..
Ответ №1:
я думаю, это должно сработать для вас
end_time=Date_ADD(end_time,Interval DATEDIFF(now(),pause_time) day)
если не попал в справочное руководство по MySQL для даты и времени