Wie kommt man Woche Datum von einem bestimmten Zeitpunkt von einem DateAdd Ausdruck zurückgegeben enden

StackOverflow https://stackoverflow.com/questions/2457530

  •  20-09-2019
  •  | 
  •  

Frage

Nicht sicher, wie mein aktuellen Ausdruck zu nehmen und die Woche zum Tag der Woche.

Mein aktueller Ausdruck gibt das Datum, eine Woche von heute.

DateAdd(DateInterval.WeekOfYear, 1, today())

Was will ich stattdessen zu tun ist das Enddatum zurückkehrt (Samstag) diese Woche statt.

Was muss ich zu diesem Ausdruck hinzuzufügen, um das gewünschte Ergebnis zu erhalten?

Danke!

Okay, sieht aus wie ich habe es, aber es ist hässlich. Kann mir jemand helfen diese rationalisieren?

Hier ist, was ich habe, basierend auf Raj Beispiel in einen Ausdruck drehen:

= "Eine Woche Projizierte Backlog w / e" & DateAdd (DateInterval.Day,   -1 * Datepart (DateInterval.WeekDay,   (DateAdd (DateInterval.WeekOfYear, 1, heute ()))) + 7,   (DateAdd (DateInterval.WeekOfYear, 1, heute ())))

War es hilfreich?

Lösung

Versuchen Sie diese

Declare @DateValue DateTime = '3/1/2010'

select DATEADD (D, -1 * DatePart (DW, @DateValue) + 7, @DateValue)

ich im Grunde berechnet, was Tag der Woche dann eingehendes Datum war, und dann weich berechnet, um den Anfang der Woche mit dem -1 Multiplikator, und freuen uns auf Samstag durchzogen von 7 ihm hinzufügen.

Natürlich ist dies nur funktioniert, wenn Sie SQL Server in die Woche gesetzt beginnt am Sonntag

Für SQL Server Reporting Services, ich denke, das sollte für Sat-Anlagen der aktuellen Woche arbeiten

DATEADD (DateInterval.Day, -1 * DatePart (DateInterval.DayOfWeek, Today()) + 7, Today())

Für Sa nächster Woche

DATEADD (DateInterval.Day, -1 * DatePart (DateInterval.DayOfWeek, Today()) + 14, Today())

Andere Tipps

Wie wäre es?

select dateadd(ww,-2,'1-27-2014')+4
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top