小技巧日记
xIOn_Ce
无名小卒
展开
-
【思考】如何判断任意组区间值之间是否有重叠
场景 业务做绩效标准的时候,设定绩效分数值不能重叠,区间值左闭右开,由此引发思考 初步解决方案 区间值以{min:x,max:y}的形式,组数为n,先将n组数据按min值排序,再从大到小遍历数组,用这一组的max减去上一组的min,结果为正则无重叠,为负数则有重叠 ...原创 2020-03-06 11:55:37 · 719 阅读 · 0 评论 -
SQL按距离最近时间排序
最近项目需要查询距离现在最近的数据,且未到时间与已过时间的数据分组展示。找到解决方法记录如下: 时间段分组 利用case when将未到时间和已过时间的进行分组并排序 ORDER BY CASE WHEN s.start_time>NOW() THEN 0 ELSE 1 end 距离当前时间最近排序 与当前时间相减取绝对值进行排序 ORDER BY CASE WHEN s.start_ti...原创 2019-10-17 15:58:35 · 2788 阅读 · 1 评论