大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说结束时间-开始时间=经过的时间 excel_列表怎么按时间排序,希望您对编程的造诣更进一步.
今天接到一个需求,任务按照 进行中>即将开始>已结束 >活动任务>全局任务 > sort的排序 表如下
CREATE TABLE `task` ( `taskid` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT "任务ID", `title` varchar(20) NOT NULL DEFAULT "" COMMENT "标题", `type_for` tinyint(1) NOT NULL DEFAULT "1" COMMENT "1全局2针对活动", `atid` int(11) unsigned NOT NULL DEFAULT "0" COMMENT "活动ID", `beg_time` int(11) NOT NULL DEFAULT "0" COMMENT "开始时间", `end_time` int(11) NOT NULL DEFAULT "0" COMMENT "结束时间", `target` text COMMENT "任务目标", `state` tinyint(1) NOT NULL DEFAULT "1" COMMENT "状态1开启,0关闭", `created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT "创建时间", `updated_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT "更新时间", `sort` int(10) unsigned NOT NULL DEFAULT "0" COMMENT "倒序", PRIMARY KEY (`taskid`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT="任务系统"
代码100分
order by
需要做用到case when
才能正常达到预期代码100分select * from `task` order by (case when beg_time <= 1587382508 and 1587382508 <= end_time then 1 else 0 end) desc, (case when beg_time > 1587382508 then 1 else 0 end) desc, (case when end_time < 1587382508 then 1 else 0 end) desc, type_for asc, sort desc
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8922.html