【问题标题】:How to check two dates if dates between them exists or not with the database value如何使用数据库值检查两个日期之间的日期是否存在
【发布时间】:2013-04-04 16:33:58
【问题描述】:

示例: 我必须检查这些日期:-> from=15 March 2013 & 15 April 2013 在以下日期之间是否有任何日子在这两个日期之间。

跟踪数据库表中的数据

#       from date            to-date
-----------------------------------------
1     01 April 2013         30 April 2013   //here we will find as falling
2     01 May 2013           15 May 2013   
3     01 June 2013          20 June 2013

我只知道以下技术可用于单次日期检查,但我不知道如何比较 2 天。

// set some example data
$referenceDate = '01 April 2013';
$fromDate = '01 January 2013';
$toDate = '01 June 2013';

// convert dates to timestamps (strings to integers)
$referenceTimestamp = strtotime( $referenceDate );
$fromTimestamp = strtotime( $fromDate );
$toTimestamp = strtotime( $toDate );

// isBetween is Boolean TRUE if reference date is greater or equal fromDate and smaller or       
  equal toDate
$isBetween = $referenceTimestamp >= $fromTimestamp and $referenceTimestamp <= $toTimestamp;

【问题讨论】:

    标签: php


    【解决方案1】:

    如果您使用的是 mysql 数据库,则可以使用 BETWEEN。

    SELECT * FROM `dt_tb` WHERE year( date_column ) between 2004 and 2005
    

    "date_column" 是一个日期字段,"year" 表示它只查看年份。如需完整日期检查,请尝试以下操作:

    SELECT * from `dt_tb` WHERE date_column BETWEEN "2001-01-05" AND"2001-01-10";
    

    【讨论】:

    • 你不清楚我的怀疑。请再读一遍我的问题
    猜你喜欢
    • 1970-01-01
    • 2017-07-07
    • 2016-05-31
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 2013-11-08
    相关资源
    最近更新 更多