>백엔드 개발 >PHP 튜토리얼 >求一段查询sql

求一段查询sql

WBOY
WBOY원래의
2016-06-23 13:26:10892검색

数据库表有一个字段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这样的不同类型,这样查询起来肯定最快
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.