mysql - MySQL查询以获取开始日期和结束日期之间的差异总和
问题描述
我有一个包含以下数据的表:
+-----------+-----------+
| Date_from | Date_to |
+-----------+-----------+
| 20-NOV-19 | 22-NOV-19 |
+-----------+-----------+
| 10-NOV-19 | 21-NOV-19 |
+-----------+-----------+
| 14-NOV-19 | 26-NOV-19 |
+-----------+-----------+
我需要一个查询来找到 和 之间的差值之date_from
和date_to
。
例子:
- 19 年 11 月 20 日和 19 年 11 月 22 日之间的差异是 2 天
- 10-Nov-19 和 21-Nov-19 之间的差异是 11 天,但查询必须将其视为 9 天,因为第一行中已经考虑了 11 月 20 日、11 月 21 日。
- 14-Nov-19 和 26-Nov-19 之间的差异是 12 天,但查询必须将其视为 4 天,因为上述行中已经考虑了 11 月 14 日到 11 月 22 日的天数。
查询结果应该是
15 天 (2+9+4)
任何帮助将非常感激。
解决方案
您可以使用以下查询来获取总数。请用您的实际表名更改 Table_name
SELECT SUM(TIMESTAMPDIFF(DAY,Date_from,Date_to)) as total FROM Table_name
推荐阅读
- php - 遇到未捕获的问题:codeiginter 中 getKYCByUserID() 中的参数太少
- python - 如何在 Python3 中解压单个变量元组?
- python - 在python中将0/1矩阵转换为二维网格图
- flutter - TextFormField 中的预定义域名
- r - R 如何用 ggplot 编写函数,以便同时更改标题和变量?
- install4j - createbundle 命令请求参数
- django - 复制失败:stat /var/lib/docker/tmp/docker-builder073318368/Pipfile:没有这样的文件或目录
- mysql - Ubuntu 升级到 20.04 后,用户“root”@“localhost”的访问被拒绝(使用密码:是)
- reactjs - 选择 onChange - 使用 mount 和 react-testing-library 进行测试
- html - 在jQuery中单击radio btn时在向上/向下滑动时追加和删除