【发布时间】:2020-03-20 16:37:22
【问题描述】:
我有一个通用日期表。
我正在尝试实现以下输出
我似乎无法通过使用这种情况来获得正确的输出
SELECT
DayOfWeek,
ShortDate,
CASE WHEN (DayOfWeekNumber = '1' OR DayOfWeekNumber = '7') -- Saturday or Sunday
THEN (SELECT TOP 1 ShortDate FROM DateTable DD WHERE DayOfWeekNumber = 6)
ELSE ShortDate END AS ExpectedShortDate
FROM DateTable
WHERE ShortDate >= '3/13/2020'
这是我看到的输出
我明白为什么我会得到“1/5/1900”,这是因为那是我表中的第一个日期是星期五。但是,就我而言,每个星期六和星期日的日期都应该替换为上一个星期五的日期。
任何帮助将不胜感激。
【问题讨论】:
标签: sql sql-server tsql date