我有一个名为DDateTime
的列,其类型为DateTime
。
我想仅将DDateTime
的日期与输入日期进行比较。
示例:' 14-05-2018 08:00:00' =' 14-05-2018'
如何仅比较DateTime
变量的日期?
$sql = "SELECT *
FROM ride
WHERE RideFrom = '$RideFrom'
and RideTo = '$RideTo'
and CONVERT(VARCHAR(10), DDateTime, 103) = '14-05-2018';";
我尝试了这个查询但是没有用
答案 0 :(得分:1)
你可以使用MySQL DATE()
函数,让它变得非常简单
AND DATE(DDateTime) = '14-05-2018'
虽然我必须提到你的脚本对SQL Injection Attack是开放的 甚至if you are escaping inputs, its not safe! 在
中使用prepared parameterized statementsMYSQLI_
或PDO
API
答案 1 :(得分:0)
这是两种方法 选择你喜欢的那个。
$str ='14-05-2018 08:00:00';
echo substr($str, 0, 10). "\n";
echo date("d-m-Y", strtotime($str));
Substr将始终采用前十个字符,无论它们是什么 Date将尝试解析并使其成为unixtime然后转换为datestring。