Php 查询日历事件的最佳方式?
我正在创建一个日历,显示一个月的活动时间表。每天都有几个参数,这些参数决定了这一天是否可以安排更多的活动(有多少员工可用,有多少时间可用等) 我的数据库使用三个表进行设置:Php 查询日历事件的最佳方式?,php,mysql,database,Php,Mysql,Database,我正在创建一个日历,显示一个月的活动时间表。每天都有几个参数,这些参数决定了这一天是否可以安排更多的活动(有多少员工可用,有多少时间可用等) 我的数据库使用三个表进行设置: 常规计划-用于为一周中的每一天创建一个数组,其中列出了可用的员工数量、可用时间等 计划变更-如果日期存在变更,则会覆盖常规计划数组中的信息 事件-由日期引用的现有事件 在这个阶段,代码循环一个月中的几天,每天检查两到三件事情 日程安排是否有任何变化(公共假日、更短的工作时间等) 这一天的工作时间/人数是多少 (如果有工作人员
t_month (day INT)
INSERT
INTO t_month
VALUES
(1),
(2),
...
(31)
然后查询:
SELECT *
FROM t_month, t_schedule
WHERE schedule_date = '2009-03-01' + INTERVAL t_month.day DAY
AND schedule_date < '2009-03-01' + INTERVAL 1 MONTH
AND ...
创建一个表:
t_month (day INT)
INSERT
INTO t_month
VALUES
(1),
(2),
...
(31)
然后查询:
SELECT *
FROM t_month, t_schedule
WHERE schedule_date = '2009-03-01' + INTERVAL t_month.day DAY
AND schedule_date < '2009-03-01' + INTERVAL 1 MONTH
AND ...
我想不出一个好的理由,你需要把每个查询限制在一天之内。当然,您可以选择一对日期之间的所有值 类似地,您可以使用联接来获取给定日期的事件计划事件数
然后对数据库查询返回的数组执行循环(每天)。我想不出有什么好的理由需要将每个查询限制为一天。当然,您可以选择一对日期之间的所有值 类似地,您可以使用联接来获取给定日期的事件计划事件数
然后对数据库查询返回的数组执行循环(每天)。我遇到了类似的问题,我们只需将大部分数据加载到页面顶部的数组中,然后查询数组中的相关数据。之后页面加载速度提高了10倍
因此,运行一个或两个广泛的查询,收集您需要的所有数据,选择适当的键,并将每个结果存储到一个数组中。然后访问数组而不是数据库。PHP是非常灵活的数组索引,你可以使用各种东西作为键。。。或者几个索引。我也遇到了类似的问题,我们只是将大部分数据加载到页面顶部的数组中,然后查询数组中的相关数据。之后页面加载速度提高了10倍
因此,运行一个或两个广泛的查询,收集您需要的所有数据,选择适当的键,并将每个结果存储到一个数组中。然后访问数组而不是数据库。PHP是非常灵活的数组索引,你可以使用各种东西作为键。。。或多个索引。感谢所有的答案。放入阵列非常适合我的需要。再次感谢!谢谢你的回答。放入阵列非常适合我的需要。再次感谢!