我正在编写脚本,该脚本需要让管理员能够在他想要一个可用的停车场时插入日期,管理员在一个范围内插入日期。
我很难找到在 MySQL 中存储日期的最佳方法的解决方案。
AVAILABLE_FROM_DATE
我应该使用两列存储日期AVAILABLE_UNTIL_DATE
吗?
PLID AVAILABLE_FROM DATE AVAILABLE_UNTIL_DATE
1 2012-04-01 2012-04-03
1 2012-04-05 2012-04-15
2 2012-04-21 2012-04-30
或者我应该只使用一列AVAILABLE_DATE
并将管理员为范围之间的每个日期选择的新行存储在新行中吗?
[编辑开始]
我上面使用单列的意思不是将日期加入或拆分为单列,我实际上是指将日期存储在单行中,如下所示:
PLID AVAILABLE_DATE
1 2012-04-01
1 2012-04-02
1 2012-04-03
对于我要存储的所有可用日期,依此类推。
[编辑结束]
基本上,管理员会想要插入停车场可用的日期范围,并允许成员在用户正在寻找该范围内的时段时选择该时段。
或者有没有更好更简单的方法来做到这一点?
我目前正在尝试使用第一种方法,在该范围内使用单独的列,但是在查找某个范围内的停车场时无法获得所需的结果。
[编辑开始]
SELECT * FROM `parking_lot_dates`
WHERE (available_from_date BETWEEN '2012-04-22' AND '2012-04-30'
AND (available_until_date BETWEEN '2012-04-22' AND '2012-04-30'))
我对上面的行使用以下查询,它返回空。我希望它返回具有 PLID 2的最后一行。
[编辑结束]
先感谢您。