2009-06-10 20 views

Antwort

0

Try this:

select cast(datepart(year, mydatecolumn) as char(4)) + '-' 
    + datename(month, mydatecolumn) 
from mytable 
2

Sie nicht das Datum-Format in der Datenbank ändern sollte. Sie sollten nur sicherstellen, dass Sie beim Anzeigen des Datums das Datum korrekt formatieren, sodass Sie es im gewünschten Format anzeigen.

Wie Sie das tun, hängt mit der Sprache zusammen, die Sie in Ihrem Programm verwenden. Sie können das Datum auch direkt im gewünschten Format mit der Methode von ck ausgeben.

+0

Ich zweite das. Die Formatierung sollte nie in der Datenschicht erfolgen, es ist ein Albtraum der Lokalisierung. –

0

Zur Eingabe Verwendung SET DATEFORMAT

Um zum Charakter zu werfen, sehen die CONVERT Arten zu interpretieren.

Um die Ausgabe zu formatieren, verwenden Sie, was auch immer Ihre Client-Umgebung verwendet, um Ausgabe zu formatieren, SQL selbst hat keine Ausgabe aber TDS und Anzeige bleibt dem Client überlassen.

0

Es ist ein Schmerz, benutzerdefinierte Formate zu tun, ohne Ihre eigene Funktion zu schreiben.

beste, das ich habe, ist SELECT newFormat = YEAR (GETDATE()) + '-' + DATENAME (Monat, GETDATE())

+0

Sie müssen auch das YEAR in NVARCHAR konvertieren CAST (JAHR (GETDATE()) AS NVARCHAR (10)) –

Verwandte Themen