
sql
文章平均质量分 63
时间_已被注册
代码在迭代,框架在迭代,算法在迭代。吃透原理,迎难而上。
展开
-
Oracle - 多区间按权重取值逻辑 ,分时区-多层级-取配置方案(三)
例如,总公司配置20230101-20231231为方案3, 分公司配置 20230301-20230731 为方案2,部门配置20230601-20231031 为方案1,配置优先级为 部门> 分公司>总公司 ,即啥都没配则使用总公司默认值;第一篇说到,拆分出了很多日期边界,由于时间区间边界当天,不好判断,只能单独拉出来作为一条记录, 虽然保证了边界数据的准确性,但拆分太散后 无法合并到一起。最近一直在琢磨,琢磨不同方案 ,各种方法,在刚刚发完第二篇的适合,灵光一现,一下解决了。按优先级拆分时间区间。原创 2024-11-22 15:20:40 · 564 阅读 · 0 评论 -
Oracle - 多区间按权重取值逻辑 ,分时区-多层级-取配置方案(二)
例如,总公司配置20230101-20231231为方案3, 分公司配置 20230301-20230731 为方案2,部门配置20230601-20231031 为方案1,配置优先级为 部门> 分公司>总公司 ,即啥都没配则使用总公司默认值;继上一篇拆分多区间后, 再次进行优化,目前有阶段性成果,先记录一下,等后续再有改进再发。某业务配置表,按配置的时间区间及组织层级取方案,形成报表展示出所有部门方案的取值;上一篇中 对日期区间的边界日期做了单独的拆分,没有将边界日期和其临界的 日期合并。原创 2024-11-20 10:37:28 · 696 阅读 · 0 评论 -
Oracle - 多区间按权重取值逻辑 ,分时区-多层级-取配置方案
例如,总公司配置20230101-20231231为方案3, 分公司配置 20230301-20230731 为方案2,部门配置20230601-20231031 为方案1,配置优先级为 部门> 分公司>总公司 ,即啥都没配则使用总公司默认值;PS: 由于时间区间边界当天,不好判断,只能单独拉出来作为一条记录, 虽然保证了边界数据的准确性,但拆分太散后 无法合并到一起,分析: 如果是单天计算, 那很简单,可以直接按天匹配,然后取 方案1> 方案2> 方案3;原创 2023-09-28 16:56:44 · 498 阅读 · 0 评论 -
sqlite -- 手动编写 rank() 函数
文章目录背景前言需求解决过程表A 和 数据步骤1 获取序列步骤2 序列号 转换成 顺序步骤3 更新表的顺序字段步骤4 结果校验步骤5 初步优化-更新部分数据步骤6 测试-插入相同成绩最终代码背景项目一开始定义使用轻量级数据库sqlite来处理数据, 用着用着发现想要做个排序功能却发现sqlite没有现成的排序函数rank()等等,使用排序后临时表的rowid也不行, 查询的出来的rowid是真实数据的,并不是临时表;然后翻阅了百度,也没有找到个现成的。前言这个节点换数据库就不现实,函数不也是原创 2020-08-23 03:25:55 · 1686 阅读 · 0 评论