如何做有时间限制的置顶贴功能
问题已经完美解决,谢谢大家。谢谢4楼的xuzuning,让我学到了一个好用的函数DATE_ADD;
我把实际应用时碰到问题说一下,算作个补充吧,希望能对后面遇到的朋友有帮助:
DATE_ADD是个mysql的函数,用法DATE_ADD(date,INTERVAL expr type)
date这个参数必须是"2011-10-20"或"2011-10-20 12:20:50"这样的时间格式,用"1319338463"这样的时间戳是不行的;
还要记得istop 也要desc才可以。
我的完整sql语句是:
select * from newstable order by istop and DATE_ADD(topdate,INTERVAL topday DAY)>=now() desc,adddate desc
其中
istop 是否置顶int 0/1
topday 置顶天数int
topdate 置顶开始时间 datetime
adddate 新闻发布时间 varchar
更正一下,前面说的"date这个参数必须是"2011-10-20"或"2011-10-20 12:20:50"这样的时间格式",好像不对,这个时间格式应该跟DATE_ADD(date,INTERVAL expr type) 里面的type有关;也许是我这里用了DAY所以不能用时间戳;用其它的只要对应了类型应该也可以的,我没有试过;说话还是严谨点好,不要误导了后人,呵呵
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步