select 个(时间戳)生日晚 X 天的用户
select users who their (timeStamped)birthday is X days later
我将用户的生日作为 Unix 时间戳格式(整数)存储在 MySQL 数据库中。
现在我想向用户发送一封电子邮件,告知他们的生日是 30 天后。
我知道下面 SQL 代码是给 select 今天生日的用户:
SELECT * FROM members WHERE
DATE_FORMAT(FROM_UNIXTIME(birthday),'%m-%d') = DATE_FORMAT(NOW(),'%m-%d')
但我不知道如何更改它以达到我的目的。
我用谷歌搜索了太多,在 SO 上找到了 this similar question 但是所有答案都是基于 DATE 格式的生日,而我的生日字段是基于 timeStamp 由 time() 创建。
你有什么解决办法吗?
您可以使用 datediff
函数:
SELECT *
FROM members
WHERE DATEDIFF(FROM_UNIXTIME(birthday), NOW()) <= 30
我将用户的生日作为 Unix 时间戳格式(整数)存储在 MySQL 数据库中。
现在我想向用户发送一封电子邮件,告知他们的生日是 30 天后。
我知道下面 SQL 代码是给 select 今天生日的用户:
SELECT * FROM members WHERE
DATE_FORMAT(FROM_UNIXTIME(birthday),'%m-%d') = DATE_FORMAT(NOW(),'%m-%d')
但我不知道如何更改它以达到我的目的。
我用谷歌搜索了太多,在 SO 上找到了 this similar question 但是所有答案都是基于 DATE 格式的生日,而我的生日字段是基于 timeStamp 由 time() 创建。
你有什么解决办法吗?
您可以使用 datediff
函数:
SELECT *
FROM members
WHERE DATEDIFF(FROM_UNIXTIME(birthday), NOW()) <= 30