我的 mysql 表中有日期时间形式的数据,但是当我想在 php 屏幕中搜索时,我只想显示相对于日期的数据。现在我的 sql 查询是。
$datefrom=date($_GET['datefrom']);
$dateto=date($_GET['dateto']);
$issues = $database->select("tablename", "*", [
"dateadded[<>]" => [$datefrom, $dateto]
]);
解决办法是什么,请指导
最佳答案
试试这个 -
$datefrom = date('Y-m-d h:i:s', strtotime($_GET['datefrom']) );
$dateto = date('Y-m-d h:i:s', strtotime($_GET['dateto']) );
$issues = $database->select("tablename", "*", [
"dateadded[<>]" => [$datefrom, $dateto]
]);
或
如果起始日期和起始日期不同,请尝试此操作 -
$d1 = $_GET['datefrom'].' 00:00:00';
$d2 = $_GET['dateto'].' 00:00:00';
$datefrom = date($d1);
$dateto = date($d2);
SELECT * FROM `tablename` WHERE `datecol` BETWEEN '2018-11-27 00:00:00' and '2018-12-07 00:00:00'
和
对于当天搜索,请使用这种查询 -
SELECT * FROM datetable WHERE datecol LIKE '2012-12-25%'
希望这对您有帮助。
关于php - 如何仅按日期搜索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55589949/