将变量与其他日期,日期时间进行比较

时间:2013-09-09 17:04:11

标签: php ms-access datetime ms-access-2007

我正在使用Access数据库,它有一个名为Checkinout的表,用于存储Datetime。我试图将该变量与另一个变量进行比较,但无论我如何尝试它总是给我一个错误。

如果我使用convert,它会告诉我函数convert不存在。如果我使用cast,它说我错过了一个操作员。

以下是一个例子:

$sql1="SELECT * FROM Checkinout 
      where Checkinout.Checktime > Cast('26-8-2013' as Datetime) ";  

我尝试过许多不同的方式,如:

$date= '26/08/2013 00:00:00 a.m';
$date= '26-08-2013 00:00:00 a.m';
$date= '2013/08/26 00:00:00 a.m';
$date= '2013-08-26 00:00:00 a.m';

等等,仍然无效。

我正在使用PHP进行查询。

1 个答案:

答案 0 :(得分:2)

Access SQL不包含CastConvert个函数。您可以使用CDate()将合适的字符串转换为日期/时间值。

$sql1="SELECT * FROM Checkinout 
      where Checkinout.Checktime > CDate('2013-8-26') ";  

或使用#分隔符将值作为日期/时间字面值提供。

$sql1="SELECT * FROM Checkinout 
      where Checkinout.Checktime > #2013-8-26# "; 

我使用 yyyy-md 格式作为日期 string ,以避免与 dm-yyy md-yyyy混淆区域设置。