たとえば、2列のデータがあります
Row_Date
2013-01-03-00:00:00
Starttime
130
私が必要とするのは、開始時間を取り、これを次のdate_time
ような時間と分のフィールドの列に入れることです
Datetime
2013-01-03-01:30:00
現時点で管理できるのは、次のコマンドを使用して時間を入力することだけです(これは他の場所で見つけました)
,CAST(DATEADD(HOUR, StartTime/100, CONVERT(char(12), ROW_DATE, 112))
AS DATETIME) AS DATE_TOME
starttime を 100 で割ると分ではなく時間が残るため、これが機能しない理由は理解できますが、分を含める方法がわかりません。
私が見つけたが動作しなかった別のコマンドは次のとおりです。
,CAST(CAST(row_date AS VARCHAR(8)) + ' '
+ STUFF(RIGHT( '000' + CAST(StartTime AS VARCHAR(4)), 4), 3,0, ':') AS DATETIME)
繰り返しますが、これは別の場所で見つかりましたが、次のエラーが発生します。
文字列から日時を変換する際に変換に失敗しました。