每两周一次聚合SQL数据库中的行

每两周一次聚合SQL数据库中的行

本文介绍了如何基于日期 - 每两周一次聚合SQL数据库中的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 尊敬的专家, 我在数据库中有以下类型的行结构; 三列 - 用户ID |日期|工作时间 为每个用户填写数据(带有ID),每个日期(2010年1月至2020年12月)和每天的工作时间。 现在,业务流程是用户可以更改工作时间。例如,我通常每两周工作75小时。但是,我想将我的时间从2017年1月改为2017年3月,因为每两周只工作40小时。在这种情况下,系统将仅在这些日期之间编辑小时,剩余小时将保留至2020年12月。 现在我想退出关于我在组织中工作多少小时的报告。由于动态性和随时更改小时的业务流程,我希望得到如下输出; 测试用户01/01/2010至31 / 12/2016每周75小时 测试用户01/01/2017至2017年3月31日每两周40小时 测试用户01/04/2017至31 / 12/2020每周75小时 有谁可以帮我这个? 谢谢。 我尝试了什么: 我尝试过使用游标特定员工并使用向日期添加到日期并比较前两个小时,以查看是否存在按输出要求划分行的差异。但我很困惑,因为它没有达到目的。 请帮帮我。 谢谢。解决方案 Dear experts,I have the following kind of structure in the database as rows;Three columns - User ID | Date | Working hoursData is filled in for each user (with IDs), each date (from Jan 2010 to Dec 2020) and working hours for each day.Now, the business process is that a user can change working hours. For example, I normally work 75 hours per fortnight. But, I want to change my hours from January 2017 to March 2017 as working only 40 hours per fortnight. In that case, the system will edit hours between those dates only and the remaining hours will be left as it is up till Dec 2020.Now I want to pull out a report on how many hours I work in the organisation. Because of the dynamic nature and the business process about changing hours any time, I want to get the output as the following;Test user 01/01/2010 to 31/12/2016 75 hours per fortnightTest user 01/01/2017 to 31/03/2017 40 hours per fortnightTest user 01/04/2017 to 31/12/2020 75 hours per fortnightCan anyone please help me with this?Thanks.What I have tried:I tried using cursors for any particular employee and using forward addition to dates and comparing previous fortnight hours to see if there was a difference to break the lines as required by the output. But I am confused as it did not serve the purpose.Please help me.Thanks. 解决方案 这篇关于如何基于日期 - 每两周一次聚合SQL数据库中的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-24 01:09