2012-04-11 11 views
1

ich ein Beispieldaten unten gesetzt haben:Datum Teil Funktion in SQL Server

Date 
01/01/2010 
01/02/2010 
01/03/2010 

Ausführen der Abfrage unten gibt:

SELECT 
    DATEPART (MONTH, Date) AS MONTH 
FROM MYTABLE 

OUTPUT:

MONTH 
1 

Ich möchte die Ausgabe als mm/dd/yyyy Format wie folgt.

MONTH 
01/01/2010 

Könnte jemand bitte hineinschauen?

Vielen Dank!

Antwort

2

Wenn Sie Datum auf einen Monat verkürzen möchten, können Sie verwenden:

select dateadd(m, datediff(m, 0, getdate()), 0) 

Setzen Sie Ihre Datumsspalte statt getdate().

+0

Es wunderbar funktioniert! Danke Nikola Mark – joe

1

Wenn Sie das neueste SQL Server 2012 ausgeführt werden, können Sie datefromparts Funktion verwenden, um einen „ersten Tag des Monats“ date zu machen, wie folgt aus:

SELECT 
DATEFROMPARTS(YEAR(Date), MONTH(Date), 1) AS FIRST_OF_THE_MONTH 
FROM MYTABLE 
+0

Das ist eine großartige neue Funktion - aber nur in SQL Server ** 2012 ** (die nicht viele Leute bereits haben und verwenden) –

+0

@marc_s Danke für die Korrektur - ich erwähnte das in der Antwort, obwohl Ich stimme zu, dass es an dieser Stelle wahrscheinlich nutzlos ist. Ich habe nicht gemerkt, dass diese Funktion * das * neu ist. – dasblinkenlight

+1

@ marc_s - Das ist richtig. Ich benutze SQL Server 2005. So gibt es mir einen Fehler. Danke Marc_s und Das. – joe