如何以HH:Min格式显示[总服务时间](当前值(分钟))?SQL中的数据格式(将分钟转换为HH:MM格式)
查询:
SELECT DISTINCT dbo.sectn_dept.sectn_sc AS Customer, MONTH(dbo.incident.date_logged) AS Month_Number, DATENAME(month, dbo.incident.date_logged) AS Month, YEAR(dbo.incident.date_logged) AS Year,
dbo.incident.incident_ref PM_ref, dbo.product.product_n "Product", dbo.item.item_n "Item",
dbo.bldng_room.bldng_room_sc, dbo.assyst_usr.assyst_usr_n, dbo.incident.last_action_date "Last Action",
Status=case dbo.incident.inc_status when 'c' then 'Closed' when 'o' then 'Open' else 'Resolved' end,
CASE dbo.act_reg.act_type_sc WHEN 'ADD_ATTCHMNTS' THEN 'Yes' ELSE 'No' END AS Attachmnet ,
(select cast(total/60 as varchar(8)) + ':' + cast(total % 60 as varchar(2))
from ( select cast(sum(AR.[Travel Time] + AR.[Total Productive Time]) as int) as total from dbo.vAction_Reg as AR) T) AS [Total Service Time]
FROM dbo.bldng INNER JOIN
dbo.site ON dbo.bldng.site_id = dbo.site.site_id INNER JOIN
dbo.incident INNER JOIN dbo.item ON dbo.incident.item_id = dbo.item.item_id INNER JOIN
dbo.product ON dbo.item.product_id = dbo.product.product_id INNER JOIN
dbo.sectn_dept ON dbo.incident.sectn_dept_id = dbo.sectn_dept.sectn_dept_id INNER JOIN
dbo.inc_cat ON dbo.incident.inc_cat_id = dbo.inc_cat.inc_cat_id INNER JOIN
dbo.inc_major ON dbo.inc_cat.inc_major_id = dbo.inc_major.inc_major_id INNER JOIN
dbo.bldng_room ON dbo.incident.bldng_room_id = dbo.bldng_room.bldng_room_id ON dbo.bldng.bldng_id = dbo.bldng_room.bldng_id INNER JOIN
dbo.prod_cls ON dbo.product.prod_cls_id = dbo.prod_cls.prod_cls_id inner JOIN
dbo.assyst_usr ON dbo.incident.ass_usr_id = dbo.assyst_usr.assyst_usr_id LEFT OUTER Join
dbo.vAction_Reg on dbo.incident.incident_id=dbo.vAction_Reg.incident_id inner JOIN
dbo.act_reg ON dbo.incident.incident_id=dbo.act_reg.incident_id
WHERE
dbo.inc_major.inc_major_sc = 'PM' AND dbo.incident.date_logged >='6/19/2015'
GROUP BY dbo.sectn_dept.sectn_sc , dbo.incident.date_logged, dbo.incident.incident_ref,
dbo.product.product_n, dbo.item.item_n, dbo.bldng_room.bldng_room_sc, dbo.assyst_usr.assyst_usr_n,
dbo.incident.inc_status, dbo.act_reg.act_type_sc, dbo.incident.last_action_date,
dbo.vAction_Reg.[Total Productive Time],dbo.vAction_Reg.[Travel Time]
结果:
Customer Month Month Year PM_ref Product Item bldng_room_sc assyst_usr_n Last Action Status Attachmnet Total Service Time
DIB 6 June 2015 64625 PC2150XE 123 ABC TRADING SM Hardy Colar 20-06-15 Resolved No 291193:46
DIB 6 June 2015 64629 PC2100XE 345 ABC TRADING SM Hardy Colar 20-06-15 Resolved No 291193:46
HSBC 6 June 2015 64615 PC2100XEUSB+CCDM 765 JUMEIRA BR-OPP SAFA PARK Fawad Shakeel 19-06-15 Resolved No 291193:46
HSBC 6 June 2015 64616 PC2100XE+CCDM 787 JUMEIRA BR-OPP SAFA PARK Fawad Shakeel 19-06-15 Resolved No 291193:46
UNB 6 June 2015 64626 C2070RL 7627 DHAFRA-BRANCH Hardy Colar 20-06-15 Resolved No 291193:46
需要在下面的格式来显示总的服务时间:
Total Service Time
1:02
1:51
1:03
1:02
3:31
实际的表数据(Dtata类型=金钱)
Travel Time Total Productive Time
1.00 61.00
60.00 51.00
2.00 61.00
1.00 61.00
180.00 31.00
如果我改变像下面的查询,结果得到错误, – Salman
(选择铸造(总/ 60为varchar(8))+ ':' +铸造(总%60为varchar(2)) \t \t \t \t来自(选择投票(总和(vAction_Reg。[旅行时间] + vAction_Reg。[总生产时间])作为整数)T)AS [总服务时间] – Salman
如果值超过24小时,即行程时间= 2520.00和总生产时间= 10240.00那么结果应该在212:40 – Salman