求一段查询sql

WBOY
Lepaskan: 2016-06-23 13:26:10
asal
874 orang telah melayarinya

数据库表有一个字段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这样的不同类型,这样查询起来肯定最快
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan