mysql - 在两个日期间隔之间相交

标签 mysql

例如,我需要找到日期间隔之间的交集

我有一个约会对象

2015-01-01 and 2015-03-01

和第二个值

2015-01-01 and 2015-01-15

我想要得到结果 15。那么第一个日期范围内包含了多少天的第二个日期? 任何想法如何使用 MySql 做到这一点?

最佳答案

在MySQL中你可以使用下面的SQL语句来得到你需要的:

SELECT DATEDIFF(LEAST('2015-03-01 23:59:59','2015-01-15 23:59:59'),GREATEST('2015-01-01 00:00:00','2015-01-01 00:00:00'))+1 AS days;
+------+
| days |
+------+
|   15 |
+------+

这将使用 DATEDIFF 获取以天为单位的日期差异

关于mysql - 在两个日期间隔之间相交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31286175/

相关文章:

mysql - 我该如何编写此 INSERT 才能使其正常工作

mysql - 为什么这个查询搜索所有行,尽管是 'guided'

mysql - 加载 XML 无法识别的语句类型

mysql - 更正查询以从三个不同的表中获取数据

mysql - 是什么让 Facebook 页面加载如此之快

Mysql从unixtime时间戳中选择日期范围给出了太多记录

phpmyadmin : no database selected

mysql - 学习 MySQL、Python - 跳过重复

mysql - MySQL 如何处理并发插入?

c# - 发布部署脚本以仅运行一次脚本