我使用存储过程,并且我有一个列名称timepent,我只想显示像HH:MM格式,程序工作正常,但唯一的问题是,目前花费的时间是hh:mm:ss格式.指导我如何花时间用HH:MM格式并尽可能纠正我的程序.程序是这样的: -
CREATE procedure St_Proc_GetUserReportforCurrentDayTask
@userID int
as
Begin
set NoCount on;
DECLARE @TODAY DATE
SET @TODAY = CONVERT(VARCHAR(10), GETDATE(), 111)
select CONVERT(VARCHAR,production.CalendarDate,101) + RIGHT (CONVERT(VARCHAR,production.CalendarDate , 100 ) ,7) as Date,
RegionAndProjectInfo.RegionProjectName as Region ,
County.CountyName as County,
WorkType.WorkTypeName as WorkType,
Task.TaskName as Task,
Production.VolumeProcessed as 'Volumes Processed',
Production.TimeSpent as 'Duration (HH:MM)'
from Production
inner join RegionAndProjectInfo
on
RegionAndProjectInfo.RegionProjectID=Production.RegionProjectID
inner join County
on
County.CountyID=Production.CountyID
inner join WorkType
on
WorkType.WorkTypeID=Production.WorkTypeID
inner join Task
on
Task.TaskID=Production.TaskID
where Production.UserID=@userID and CalendarDate >= @TODAY
End
Run Code Online (Sandbox Code Playgroud)
试试这个
select SUBSTRING( convert(varchar, getdate(),108),1,5)
Run Code Online (Sandbox Code Playgroud)
用您的列名替换getdate().
我试过了,它奏效了
declare @dt datetime
set @dt = '07:30'
select convert(varchar(5),@dt,108)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
48251 次 |
| 最近记录: |