このような計算に基づいてテーブルを更新するストアド プロシージャがあり、計算は列名 ( Calendatedate
) - ( ) として実行されCurrent System Date Time
、この情報を列 ( TimeSpent
) に更新し、値を Hh:Mm:SS:Msec
形式で表示します。
クエリは正常に機能していますが、費やされた時間がフォーマットのみになるように更新したいと思いHH:MM:SS
ます。Msec
費やした時間からそれを取り除く方法を教えてください。
CREATE procedure St_Proc_UpdateTimeSpent
@timeEntryID int,
@status int output
as begin
set nocount on;
declare @Date dateTime;
set @Date=GETDATE();
update Production set TimeSpent=(SELECT CONVERT(VARCHAR(20),DateAdd(SS,Datediff(ss,CalendarDate, @Date)%(60*60*24),0),114)),
IsTaskCompleted=1
where productionTimeEntryID=@timeEntryID
set @status=1;
return @status;
end