我有一个字符串类型 Time_Start 列,可以节省数据库中的时间。
时间以 23:59
格式保存。
我需要将列中的值与当前时间进行比较!这是我的mysql查询:
$result = mysqli_query(
$conn,
"SELECT * FROM Adds WHERE STR_TO_DATE(Time_Start, '%h:%i') > CURTIME()"
);
if(mysqli_num_rows($result)==0)
{
echo "NO RESULTS" ;
}
else
{
while($row = mysqli_fetch_array($result) )
{
echo $row['Time_Start'];
}
}
由于某种原因,这不起作用。我做错了什么?
答案 0 :(得分:1)
您应该使用指定的列类型TIME
来存储您的时间数据。时间将以hours:minutes:seconds
格式存储,与当前时间的比较非常简单:
SELECT * FROM Adds Time_Start > CURTIME()
答案 1 :(得分:0)
使用%H。您的输入是24小时格式。
select STR_TO_DATE(Time_Start, '%H:%i');