Php 在mysql日期选择中指定小时数

Php 在mysql日期选择中指定小时数,php,mysql,Php,Mysql,出于兴趣,我正在使用上面的代码从mysql中选择记录,我需要更改哪些位来指定小时,而不仅仅是月、日和年。列类型为TIMESTAMP(如果有帮助的话) 谢谢您需要更改: “Y-m-d”至“Y-m-d h-i-s” 如果您的日期操作似乎在PHP中,请参见此处: 然而,这个问题有点模棱两可。如果试图获取$datef的值并在SQL中使用,则可能需要执行以下操作: $datef = (date("Y-m-d",mktime(0, 0, 0, $_POST['month'], $_POST['day'],

出于兴趣,我正在使用上面的代码从mysql中选择记录,我需要更改哪些位来指定小时,而不仅仅是月、日和年。列类型为TIMESTAMP(如果有帮助的话)


谢谢

您需要更改:

“Y-m-d”
“Y-m-d h-i-s”

如果您的日期操作似乎在PHP中,请参见此处:

然而,这个问题有点模棱两可。如果试图获取
$datef
的值并在SQL中使用,则可能需要执行以下操作:

$datef = (date("Y-m-d",mktime(0, 0, 0, $_POST['month'], $_POST['day'], $_POST['year'])));

如果您希望这样做,您必须稍微修改mysql查询,否则,您将只获取指定时间的记录(例如:12:00:00,而不是12:00:01):


虽然-请注意,如果小时值不可用,这无关紧要。在规定的代码中,似乎就是这样(没有发布小时数据)。
$day=$_POST['day'];
$month=$_POST['month'];
$year=$_POST['year'];
$hour=12;
$minute=00;
$second=00;

$datef=strtotime($year.":".$month.":".$day." ".$hour.":".$minute.":".$second);
SELECT * FROM records WHERE datefield BETWEEN '2010-11-01 07:00:00' AND '2010-11-01 07:59:59'
SELECT * FROM records WHERE datefield LIKE '2010-11-01 07%';