首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SUM(tablename/60)如何实现?

SUM(tablename/60)如何实现?
EN

Stack Overflow用户
提问于 2014-04-25 18:24:42
回答 1查看 50关注 0票数 0

这是我存储过程中的一行。我的表场工作时间是存储分钟。如何将它分割成60来存储。

代码语言:javascript
复制
(select 
    SUM(ISNULL(hoursworked,0)) 
 from 
    UserTime 
 where 
    userid = @employeeid 
    and convert(varchar(100),checkin,106) = convert(varchar(100),@Startdate,106) 
    and loginstatus= 'Out') 


hoursworked as int

我如何实现这一点?

代码语言:javascript
复制
SUM(ISNULL(hoursworked/60,0))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-25 18:41:31

你可能得到的是0。您应该先做sum()

代码语言:javascript
复制
coalesce(sum(hoursworked)/60, 0)

问题是Server进行整数除法,因此任何小于60 (且大于或等于0)的值都将导致0。你可能真的想:

代码语言:javascript
复制
coalesce(sum(hoursworked)/60.0, 0)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23300369

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档