Подтвердить что ты не робот

Как вычитать с помощью SQL в MYSQL между двумя значениями даты и получить результат в минутах или секунде?

Я хочу вычесть между двумя значениями времени даты, используя SQL в MySQL, чтобы получить интервал в минутах или секундах. Есть идеи? Я хочу запустить SQL-запрос, который извлекает данные из базы данных, которые вошли в систему как 10 минут с момента.

4b9b3361

Ответ 1

Существуют функции TIMEDIFF (expr1, expr2), которые возвращают значение expr1-expr2 и TIME_TO_SEC (expr3), которое выражает expr1 в секундах.

Обратите внимание, что expr1 и expr2 являются значениями даты и времени, а expr3 - только значением времени.

Для получения дополнительной информации просмотрите эту ссылку.

Ответ 2

TIMESTAMPDIFF похож на TIMEDIFF, который утверждает Мэтью, за исключением того, что он возвращает разницу двух дней в любых единицах, которые вы хотите (секунды, минуты, часы и т.д.).

Например,

SELECT TIMESTAMPDIFF(MINUTE,LogOutTime,LogInTime) AS TimeLoggedIn
FROM LogTable

Вернет количество минут, в течение которых пользователь выполнил вход (при условии, что вы сохранили этот тип вещей в такой таблице).

Ответ 3

Я бы сделал это так: выберите, где последняя активность находится в пределах 10 минут.

SELECT * FROM table WHERE last_activity >= DATE_SUB(NOW(), INTERVAL 10 MINUTE)

Ответ 4

SELECT TIMESTAMPDIFF(MINUTE,LogOutTime,LogInTime) AS TimeLoggedIn
FROM LogTable

Этот пример разрушит время, если оно используется с использованием военного времени. Поэтому для подсчета миллиметрового времени я его не рекомендую, поскольку он выводит отрицательные значения.

Ответ 5

Вы можете попробовать и отбросить их на отметку Unix Time и принять во внимание.