PHP在2日期之间

时间:2014-11-25 14:13:01

标签: php mysql

您好我试图从mysql中选择结果日期
mytable中:

  

id_room | check_in | CHECK_OUT


问题是当我想要检查日期1到日期2之间的保留数据。
例如我的房间数据:

  

id_room 1 ; check_in 2014/11/01 ; check_out 2014/11/08

所以我想在2014/11/03和2014/11/04查看我的预订。在系统中,它不会导致在该日期没有预订,但在实际生活中必须预订2014/11/03和2014/11/04。因为2014年11月1日的check_in和2014/11/08的check_out。

我正在使用

SELECT * FROM tabel WHERE cek_in BETWEEN '2014/11/03' AND '2014/11/04' OR cek_out BETWEEN 2014/11/03' AND '2014/11/04'

如果有任何线索或其他逻辑,请告诉我:D 感谢

1 个答案:

答案 0 :(得分:0)

如果我理解正确;这是一个经典问题,您希望包含与日期重叠的预订:

SELECT * 
  FROM table1
 WHERE cek_out >= '2014-11-03' /* Check OUT >= START of range to check */
   AND cek_in  <= '2014-11-05' /* Check IN  <=  END  of range to check */;

更新

所以你正在运行上面的查询,房间里有一个现有的预订

cek_in  = '2014-11-01' (<= '2014-11-05') /* OK */
cek_out = '2014-11-05' (>= '2014-11-03') /* OK */

这应该出现,你确定你写了正确的查询吗?见评论。