Получить оставшиеся дни в MYSQL SELECT (вычитая 3 даты)

0

Я пытаюсь вычесть now() - созданное поле datetime с 30 дней, чтобы получить оставшиеся дни как поле datetime, mysql дает мне ошибку для такого рода вещей.

SELECT id, created, INTERVAL 30 DAY - CURRENT_DATE - created as timeleft FROM tablename
  • 0
    INTERVAL 30 DAY - CURRENT_DATE задом наперед ... должен быть CURRENT_DATE - INTERVAL 30 DAY
Теги:
datetime

2 ответа

0

В mysql вы должны перевести datetime в unix_timestamp, чтобы вычислить разницу между двумя днями

SELECT id, created, 30 - (unix_timestamp(CURRENT_DATE) - unix_timestamp(created ))/3600/24 as timeleft FROM tablename

0

Используйте функцию добавления даты, чтобы вычесть 30 дней.

 SELECT DATE_ADD(current_date, interval -30 day);  

Возвратите разницу в днях между двумя значениями даты:

    SELECT DATEDIFF(current_date, "2017-06-15");

Вы можете использовать комбинацию этих функций для достижения желаемого результата.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню