Мне нужно получить записи, которые вставляются за последние 24 часа. Я прочитал об этом и получил, что мне нужно использовать тип DATETIME
в моем столбце даты MySQL.
Но моя проблема в том, что я не знаю, как генерировать дату для MySQL DATETIME
типа с PHP?
Как я могу это сделать? Спасибо заранее.
Как сгенерировать дату для типа DATETIME MySQL с помощью PHP?
Ответ 1
Просто
$mysql_date_now = date("Y-m-d H:i:s");
Поскольку DATETIME
в mysql YYYY-MM-DD HH:ii:ss
Ответ 2
Если вы ищете способ генерации datetime для вставки в поле datetime, используйте только следующий код
$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
Ответ 3
Есть два пути:
-
Используйте текстовое представление - что-то вроде:
<?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);