我需要一个小的帮助来理解从一个表(规则设置)到结果的循环行。
需要记住的几点:
现在我只有2个employee 4536的设置值,也可以是4或5。。
settingid每7天轮换一次,因为在规则设置表中我提到了雇员4536的weekofffrequency=7
它应该在设置ID 1和2之间重复,而不是99
它应该适用于所有员工
sql fiddler链接:http://sqlfiddle.com/#!18/9eecb/92011号
我已附上截图,以便我可以解释我的要求更清楚。
注:
规则设置表中的记录/行不固定。。。员工可以有n个设置。。。
但是rulesetting.weekofffrequency值对于雇员总是相同的
请问我是否有任何疑问。。。
2条答案
按热度按时间enxuqcxy1#
我稍微修改了您的查询,并添加了rulesettingsmodified和newrotatesettingid。请检查一下这对你是否合适。
请在这里查看完整的代码。
zdwk9cvp2#
我实现了如下。在这里
expandrulesettings(add):将rulesettings行展开为雇员的每个settingid的周数fffrequency。
numberofrotate(add):获取rotate的数量(每个员工的所有settingid的数量)。
employeedates(change):为每个员工分配轮换的id日期。
employeeweekofffrequency(change):在匹配employeeid和id时加入employeedates和expandrulesettings表。