Ich versuche, eine einzelne ganze Zahl, die den Stundenwert darstellt, in eine Zeit zu konvertieren. Ich habe versucht, mit Guss aber wandelt den Wert in ein DatumSQL konvertieren single int in einen Zeitwert
cast(datepart(hh,tstart) as datetime) as test
Ich habe auch versucht, es als eine Zeit des Gießens und die Umwandlung ist nicht erlaubt.
Die Zahlen mit denen ich arbeite sind 7.8.9.10.11.12.13, ..., 23, 0
Das Format Ich mag würde 7 bis 07.00 Uhr wird konvertieren, 23 bis 23.00 Uhr, etc
Danke
Hinweis: Ihre aktuelle Besetzung wird eine Datumzeit zwischen '1900-01-01' zurückzukehren und ‚1900- 01-24 ', weil X zu datetime (wobei X ein int ist) addiert wird, fügt nur X Tage zu' 1900-01-01 'hinzu. Es gibt ein paar Optionen, die Sie haben, aber eine ist etwas wie 'CAST (DATEADD (STUNDE, DATEPART (HH, tstart), 0) AS TIME)' – ZLK
das Format, das Sie geben, ist ein Ausgabeformat, und das ist varchar keine Zeit. also warum nicht einfach stringconcatenate Ihre int mit + ': 00'? – swe