выберите пользователей, чей день рождения (timeStamped) составляет X дней

Я храню день рождения моих пользователей в формате метки времени Unix (целое число) в базе данных MySQL.

Теперь я хочу отправить по электронной почте пользователям, что их день рождения 30 дней спустя.

Я знаю, что ниже SQL Code нужно выбрать пользователей, у которых сегодня день рождения:

SELECT * FROM members WHERE
DATE_FORMAT(FROM_UNIXTIME(birthday),'%m-%d') = DATE_FORMAT(NOW(),'%m-%d')

но я не знаю, как это изменить для моих целей.

Я слишком много гуглил и нашел этот похожий вопрос на ТАК Но все ответы основаны на ДАТА форматированный день рождения, в то время как мое поле дня рождения основано на TIMESTAMP создано время().

есть ли у вас решение для этого?

1

Решение

Вы могли бы использовать datediff функция:

SELECT *
FROM   members
WHERE  DATEDIFF(FROM_UNIXTIME(birthday), NOW()) <= 30
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector