Wyrażenie SSIS, aby znaleźć poprzedni piątek
Korzystając z SQL Server 2008, zbudowałem zmienną SSIS z dynamiczną bazą wartości w bieżącej dacie. Chciałbym mieć jego wartość na piątek, jeśli bieżącym dniem jest poniedziałek, a oto wyrażenie zbudowane:
DATEPART("dw",GETDATE()) != 2?
RIGHT("0" + (DT_WSTR,2)MONTH(DATEADD("dd", -1, GETDATE())), 2) + "/"
+ RIGHT("0" + (DT_WSTR,2)DAY(DATEADD("dd", -1, GETDATE())), 2) + "/" +
(DT_WSTR,4)YEAR(DATEADD("dd", -1, GETDATE())) : RIGHT("0" + (DT_WSTR,2)MONTH(DATEADD("dd", -1, GETDATE())), 2) + "/"
+ RIGHT("0" + (DT_WSTR,2)DAY(DATEADD("dd", -3, GETDATE())), 2) + "/" +
(DT_WSTR,4)YEAR(DATEADD("dd", -1, GETDATE()))
Problem: nie jest dokładny, gdy zmienił się miesiąc lub rok. Czy jest jakiś lepszy sposób na to? Pomoc zostanie doceniona. Dzięki.