我需要获取最近24小时内插入的记录。我已经读过了,我需要在MySQL日期列中使用DATETIME
类型
但我的问题是我不知道如何用PHP为MySQL DATETIME
类型生成日期
我该怎么做?提前谢谢。
简单
$mysql_date_now = date("Y-m-d H:i:s");
因为mysql中的DATETIME
是YYYY-MM-DD HH:ii:ss
如果您只是在寻找一种生成日期时间的方法来插入日期时间字段,只需使用以下代码
$datetime = date('Y-m-d H:i:s') ;
或用于直接sql
INSERT INTO {TABLE} ({DATETIME}) VALUES (NOW())
这将创建一个看起来像的日期
2012-02-28 16:44:25
如果您正在寻找查询以获得最后24小时,请使用
SELECT * FROM tablename WHERE date_field > NOW() - interval 1 day
有两种方法:
-
使用文本表示-类似于:
<?php $year=2012; $month=2; $day=27; $hour=22; $minute=44; $second=58; $sql="SELECT something FROM something WHERE datecolumn>='$year-$month-$day $hour:$minute:$second'"; ?>
-
直接在SQL 中执行此操作
SELECT something FROM something WHERE datecolumn >= DATE_SUB(NOW(), INTERVAL 1 DAY);
我会更改MySQL数据库来完成一半的工作,除非你不喜欢在服务器上的时间。姓名:dateSomething类型:TIMESTAMP默认值:CURRENT_TIMESTAMP
然后SQL代码
INSERT INTO {TABLE} ({dateSomething}) VALUES (DEFAULT)