1
我有一个查询,但它没有给出正确的答案。我想显示像这样5小时58分钟+7小时58分钟= 13小时56分钟(答案应该是13.56),但下面的查询给出输出13.6。 请回复我的任何其他解决方案。 (Effort1
为5小时列,Effort1Minutes
为58分钟列和相同Effort2
是7小时列,Effort2Minutes
58分钟列。分钟超过60分钟的小时数和分钟数总和
select SUM(Effort1 + Effort2) + SUM(Effort1Minutes + Effort2Minutes)/60 + CONVERT(decimal(18,2), (SUM(Effort1Minutes + Effort2Minutes) % 60)/100.00)
from TimesheetDetails
尽管使用'time'列可能会得到,但它仍然不是正确的数据类型。 “时间”意味着代表一天的时间 - 而不是时间间隔。并且,鉴于OP正在执行这些值的增加,它表明它们意味着间隔。 –
如果你想要非常贴近类型的意义,你可以随时记录'Time1Start''Time1End'等等,但无论如何我没有提供具体的解决方案,而只是一个读者关于提高他/她的思想练习数据库 –
这个问题更多的是与例如'时间'不能容纳超过24小时的时间 - 这个时间间隔的总和很容易超过。 –