考虑一个表abc有两列device_date和device_time(两个varchar mysql)
device_date device_time 1-1-2014 0:0:00 1-1-2014 10:0:00 2-1-2014 0:0:00 3-1-2014 5:0:00 1-1-2014 0:0:00 1-1-2014 0:0:00
现在我想查找设备日期> = 2-1-2014和device_time > = 0:0:00
但结果集的所有记录都包含device_time > = 0:0:00 结果集应该只包含
2-1-2014 0:0:00 3-1-2014 5:0:00
但结果集是
1-1-2014 0:0:00 1-1-2014 10:0:00 2-1-2014 0:0:00 2-1-2014 5:0:00 4-1-2014 0:0:00 5-1-2014 0:0:00
查询就像select * from device_time> =' 0:0:00' AND device_date> =' 1-1-2014'
答案 0 :(得分:1)
您需要将其转换为日期,然后对其进行比较。
SELECT *
FROM table
WHERE DATE_FORMAT( STR_TO_DATE( device_date , "%d-%m-%Y" ) , "%Y/%m/%d" ) > '2014/01/01'
编辑: 如果你想比较时间虽然它总是大于或等于00:00:00你可以使用相同的方法。
STR_TO_DATE(device_time, '%h:%i:%s')
答案 1 :(得分:-1)
您可以搜索
select * from table where device_date='1-1-2014' AND device_time='0:0:00';