最近又开始使用到sql查询,我需要查询一段时间的内容,数据库中的时间数据是这样的:
直接对date字段进行查询一段时间的数据,发现查询 出来的结果不对,后来弄清楚是因为数据存储时是根据字符串的形式存储的,所以我在查询比较时间时,它会按照字符串比较的方式给我返回查询结果,而不是比较时间。这时候需要将字符串转为时间格式:
select *from data2 where STR_TO_DATE(Date,'%Y/%m/%d %H:%i') BETWEEN '2019/4/1 6:00' and '2019/4/1 7:00'
这样就可以查询2019/4/1 6:00到2019/4/1 7:00之间的数据啦。
这里用到了sql中的时间转换格式,和将字符串转换为日期格式的函数 STR_TO_DATE。