数据库表有一个字段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这样的不同类型,这样查询起来肯定最快
一套专业的网上书店程序,可以作为新华书店及大中型书店网上销售的首选,满足在线支付及汇款确认机制。功能简介:图书分类、查询、排行、最新、特价、关注排行、销售排行,新闻系统、汇款确认机制、求购书籍、在线咨询、热门图书定义、全站广告后台管理、后台采用WEBEDIT编辑器、集成"支付宝"在线支付等...v3.5版特殊功能说明(前台):1.自带5种风格主题。2.友好的页面提示(对网站全部









