首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mysql & php -如何从多个日期范围计算总经验年?

mysql & php -如何从多个日期范围计算总经验年?
EN

Stack Overflow用户
提问于 2016-05-11 01:54:17
回答 1查看 1.7K关注 0票数 0

我想要计算每个特定用户id的总体验年和月。user_id在表中可以是多个,如下所示。在这里,user_id 14的总经验范围将是2010-01-03至2013年- 11 -30,预期结果将是3年11个月。我如何在php或mysql中做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-11 04:03:33

评论与你的案例相关,但不完整。

如果exp_to不可空:

代码语言:javascript
运行
复制
select user_id, sum( datediff(exp_to, exp_from) +1 )
from experience
group by user_id;

备注:

  • 不要忘记+1的总和,因为对于用户25,它将返回0,而我们可以恰当地认为用户工作了1天
  • 对于用户14,根据屏幕截图,总天数为880天:您必须计算月数(例如,使用PHP )。

如果exp_to是可空的(如果用户仍然在同一位置工作,这是有意义的):

代码语言:javascript
运行
复制
select user_id, sum( datediff( ifnull(exp_to, now()), exp_from) +1 )
from experience
group by user_id;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37151815

复制
相关文章

相似问题

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