【问题标题】:mySQL generating rows based on a recurring datemySQL 根据重复日期生成行
【发布时间】:2012-12-03 15:41:59
【问题描述】:

我有一个 mySQL 表,其中包含事件、事件的详细信息、事件日期和重复值 - 即事件在几天内重复的频率。

例如日期:2012-12-03,重复:7 - 每 7 天重复一次。

我现在希望按日期搜索此行,如果搜索的是 2012-12-03、2012-12-10、2012-12-17、2012-12-24,我希望返回该行。 ..+7 天。

目前,搜索的是特定日期:

SELECT 
    id, 
    title, 
    venue, 
    date_format(datetime, '%I:%i%p') AS time 
from 
    bt_db_eventcal 
WHERE 
    DATE(datetime) = '" . $date . "'

任何人都可以帮助扩展它以根据重复返回行吗?

谢谢

【问题讨论】:

    标签: mysql date recurrence


    【解决方案1】:

    这真的是一个简单的数学。您从搜索日期中减去保存的日期,然后通过重复来修改该值。如果值为 0 则很好。

    【讨论】:

    • 非常好 - 谢谢。修改后的查询是SELECT id, title, venue, date_format(datetime, '%I:%i%p') AS time from bt_db_eventcal WHERE DATEDIFF(DATE(datetime),'2012-12-10' % recurring=0 AND '2012-12-10'<=recur_until 忘了还有一个“recur_until”字段
    猜你喜欢
    • 2021-06-20
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 2017-08-01
    相关资源
    最近更新 更多