我正在尝试用SQL创建一个表达式。表达式值正在尝试为星期几赋值。周日是1到周六是7。然后我尝试添加5天,如果它是星期一,使它落地在周五,否则每隔一天增加7天。例如。
WeekDay Inlist("2",",") DateAdd(5, "d") OR ds WeekDay Inlist("1,3,4,5,6,7",",") DateAdd(7, "d")然而,这似乎不起作用?所以基本上我在databox中输入的日期是15/03/2017,这是一个星期三,我们的表达式会说如果它是一个星期一加上5天,因此结果为false。因为这是一个星期三,我们需要说加上7天,这忽略了周六和周日,因此将导致True。这将在接下来的周三落地。
有什么想法吗?:D
发布于 2017-03-15 19:55:00
我不确定您使用的是哪种SQL变体,但是在大多数变体中可能有一个与T-SQL CHOOSE()和DATEPART()函数等效的函数可以做到这一点。
表达式语法可能如下所示:
DATEADD(CHOOSE(DATEPART("dw", date), 7, 5, 7, 7, 7, 7, 7), "d", date)https://stackoverflow.com/questions/42808762
复制相似问题