Home  >  Article  >  Backend Development  >  求一段查询sql

求一段查询sql

WBOY
WBOYOriginal
2016-06-23 13:26:10868browse

数据库表有一个字段create_time,类型是int(10) ,存储的是对应的时间戳。
这个数据表已经存放了一年多的数据了

现在我要查询:create_time字段每天下午14:00到20:00的所有记录,请问这个sql应该怎么写?


回复讨论(解决方案)

select * from 表 where FROM_UNIXTIME(create_time, '%H:%i') BETWEEN ‘14:00' and '20:00'

不建议数据库里存unix时间戳,像你这个业务就必须用到函数,执行效率会下降

select * from 表 where FROM_UNIXTIME(create_time, '%H:%i') BETWEEN ‘14:00' and '20:00'



between and可以对14:00到20:00的值进行比较?
学习了。感谢!

不建议数据库里存unix时间戳,像你这个业务就必须用到函数,执行效率会下降



这个我知道,但是没办法,这个是新加出来的业务,而且我还不能修改数据结构,如果可以,我想增加一个int字段,将时间段以分钟为单位或者以秒为单位分割成类似1~2359这样的不同类型,这样查询起来肯定最快
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn