Runden der Daten auf den ersten Tag des Monats

8

Ich verwende SQL Server 2014 und arbeite mit einer Spalte aus einer meiner Tabellen, in der die Anreisedaten aufgeführt sind.

Es hat folgendes Format:

%Vor%

Ich schreibe eine Abfrage, die Daten aus der obigen Tabelle einschließlich der ArrivalDate-Spalte ziehen würde. Allerdings muss ich die Daten so umwandeln, dass sie zum ersten Tag ihrer jeweiligen Monate werden.

Mit anderen Worten, meine Abfrage sollte das obige Beispiel wie folgt ausgeben:

%Vor%

Ich brauche das, damit ich in meinem PowerPivot-Modell eine Beziehung mit meiner Datumstabelle erstellen kann.

Ich habe diese Syntax ausprobiert, aber sie erfüllt meine Anforderungen nicht:

%Vor%     
user3115933 19.10.2015, 11:28
quelle

4 Antworten

9

Wenn es zum Beispiel der 15. eines bestimmten Monats ist, dann subtrahieren Sie 14:

%Vor%

Um den Zeitabschnitt zu eliminieren, können Sie CAST(... AS DATE) verwenden.

    
Salman A 19.10.2015, 11:31
quelle
5

Verwenden Sie FORMAT , um Ihr Datum zu formatieren.

%Vor%

Oder wenn du keinen Zeitteil willst:

%Vor%

LiveDemo

    
lad2025 19.10.2015 11:33
quelle
2

Ab SQL Server 2012 können Sie auch DATEFROMPARTS verwenden:

%Vor%     
Code Different 19.10.2015 18:08
quelle
1

Rundes Datum bis zum ersten des Monats:

%Vor%     
Metaphor 19.10.2015 18:02
quelle