Benutzer mit den meisten Antworten
Länge Spalte ermitteln

Frage
-
Hallo zusammen,
bei Analysis Service habe ich für meine Tabelle Date folgenden Ausdruck errechnet:
CONVERT(char(2), DayDigit) +'. '+ CONVERT(char(2), MonthId)
Dabei möchte ich die Tage und die Monate zusammensetzen. Das Ergebnis ist dabei 1.7 für den ersten Juli.
Leider taucht jedeoch folgendes Problem auf, da ich bei dem Char 2 stellen reservie, kommt es vor das bei einen einstelligen tagesdatum das Datim so erscheint: 1 . 7
Kann man die Länge des Char dynamisch ermitteln ? mit einer bestimmten funktion? die die länge von der Spalte errechnet und mit der 2 ersetzen?
Danke im Voraus!
Antworten
-
Char füllt standardmäßig bis zur angegebenen Länge mit Leerzeichen auf.
Nimm
Convert(varchar(2), Daydigit) + '.' + Convert(varchar(2)nmonthid)
besser noch
right('00' + Convert(varchar(2), Daydigit),2) + right('00' + Convert(varchar(2)nmonthid),2)
oder, falls Du auch ein Datum in der Tabelle hast:
convert(char(6),Datumsfeld,104)
- Als Antwort vorgeschlagen Stefan FalzModerator Montag, 6. Februar 2012 16:06
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 23. Februar 2012 13:07
Alle Antworten
-
Char füllt standardmäßig bis zur angegebenen Länge mit Leerzeichen auf.
Nimm
Convert(varchar(2), Daydigit) + '.' + Convert(varchar(2)nmonthid)
besser noch
right('00' + Convert(varchar(2), Daydigit),2) + right('00' + Convert(varchar(2)nmonthid),2)
oder, falls Du auch ein Datum in der Tabelle hast:
convert(char(6),Datumsfeld,104)
- Als Antwort vorgeschlagen Stefan FalzModerator Montag, 6. Februar 2012 16:06
- Als Antwort markiert Robert BreitenhoferModerator Donnerstag, 23. Februar 2012 13:07