【发布时间】:2014-01-27 16:54:11
【问题描述】:
我有一个公共假期表,包含以下列:
PublicHolidayID,
PublicHolidayDate,
PublicHolidayName,
IsStatic,
例如:24 December 2014 是圣诞节,它是静态日期。
我正在寻找一种获取所有静态假期的方法,添加一年并将它们插入同一个表中,为明年自动更新,因此用户不必手动添加它们。
我遇到的问题是它第一次工作,我得到24/12/2014-24/12/2015。我第二次调用我得到的程序:24/12/2014-24/12/2014-24/12/2015-24/12/2015-24/12/2016-24/12/2016
下次我调用该程序时可以想象一下会发生什么
任何帮助都会很好......
【问题讨论】:
-
你使用什么数据库引擎?
-
你希望自动更新脚本如何运行,如果它在明年运行一次的话;然后只需选择该特定年份的所有内容并添加一年即可运行;插入表(列)从表中选择(列+add1year),其中yearofdate = something并且isstatic = true也不可能使日期唯一
-
你已经尝试过什么?虽然是一个简单的问题,但有时提供现有代码会有所帮助,这样用户就可以了解您可能做错了什么,而不是盲目地为您提供解决方案
-
为什么你甚至想为明年做一份工作。如果您在未来 50 年内填充该表,该表将有多少行?除非有业务要求限制将预先填充的公共假期超过本年度。您可以获得 max(YEAR) GroupBy Month+Day 并继续为 IsStatic=1 的所有行添加年份。您可以通过循环、窗口函数、光标和许多其他方式做到这一点。
标签: sql