Есть ли в любом случае, чтобы сделать математику на запрос MySQL? - PullRequest
1 голос
/ 12 июля 2011

У меня есть два поля, одно с датой покупки, а другое с продолжительностью жизни элемента.Мне интересно, есть ли способ определить, истекла ли текущая дата продолжительности жизни.Итак, в значительной степени, если бы MySQL мог проверить, является ли current_date значением> purchase_date + продолжительности жизни.

Дата покупки - это дата в формате гггг-мм-дд, а продолжительность жизни - целое число месяцев.Есть ли способ выполнить этот расчет?

Ответы [ 3 ]

4 голосов
/ 12 июля 2011

Вы можете попробовать:

SELECT * FROM table WHERE NOW() > (purchase_date + INTERVAL lifespan MONTH)

Но вы можете использовать

SELECT * FROM table WHERE NOW() > date_add(purchase_date, INTERVAL lifespan MONTH)

Или DATEDIFF

SELECT * FROM table WHERE DATEDIFF(NOW(), purchase_date) / 30 < lifespan
1 голос
/ 12 июля 2011

Как насчет использования DATEDIFF?

Ваш запрос будет выглядеть примерно так:

SELECT * FROM table WHERE DATEDIFF(NOW(), purchase_date) < lifespan

Простите, если мой синтаксис немного отключен, я несейчас нет экземпляра SQL для тестирования

0 голосов
/ 12 июля 2011

Да, это возможно, используя функции даты и времени MySQL .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...