【发布时间】:2013-05-10 07:53:53
【问题描述】:
我想知道是否有人在 SQL 中具有函数,而不是给定初始日期和星期几(例如星期二),它可以计算自初始日期为星期二以来的下一个日期。
例如:
给定:
@initialdate=01-02-2013 --今天是星期五
@dayofweek = 3 --3 表示周三,1 表示周一,7 表示周日
返回:日期=06-02-2013
也许我还没有解释清楚.. 我是说 一个函数,参数@dayofweek=3(星期三)然后我可以给出许多不同的日期:
01-02-2013 那么如果@dayofweek=3 那么下一个日期将是 06-02-2013
02-02-2013 那么如果@dayofweek=3 那么下一个日期将是 06-02-2013
03-02-2013 那么如果@dayofweek=3 那么下一个日期将是 06-02-2013
04-02-2013 那么如果@dayofweek=3 那么下一个日期将是 06-02-2013
05-02-2013 那么如果@dayofweek=3 那么下一个日期将是 06-02-2013
06-02-2013 那么如果@dayofweek=3 那么下一个日期将是 13-02-2013
07-02-2013 那么如果@dayofweek=3 那么下一个日期将是 13-02-2013
【问题讨论】:
-
你能再举一些例子吗?为什么
DateAdd(Day, 1, myDate)不适合你? -
在 Dateadd 和
datename(dw,myDate)之间返回星期几的名称 - 真的没那么难。 -
@MichaelGardner 我已经更新了问题..
-
@DanPichelman 我已经更新了问题..
-
哦。您想知道给定日期/星期几,下一个匹配日期/星期几是什么时候?
标签: date sql-server-2008-r2 user-defined-functions dayofweek