【发布时间】:2014-12-25 20:10:36
【问题描述】:
假设您有一个表格,其中包含这些日期不可用的日期范围。
+------------+------------+
| StartDate | EndDate |
+------------+------------+
| 2014-10-1 | 2014-10-15 |
+------------+------------+
| 2014-11-4 | 2014-11-28 |
+------------+------------+
| 2014-12-17 | NULL |
+------------+------------+
NULL 的 EndDate 表示直到时间结束。所以 12/17 之后没有可用的日期。
给定一个日期范围,我需要找到第一个可用日期。我对 SQL 不是很擅长,我想不出这怎么办。
示例: 给定所需的日期范围
2014-10-13 到 2014-11-17,查询应该返回 2014-10-16
2014-10-13 到 2014-11-30,查询应该返回 2014-10-16
2014-10-21 到 2014-11-30,查询应该返回 2014-10-21
2014-12-01 到 2015-1-13,查询应该返回 2014-12-01
如果有任何帮助,我将不胜感激。谢谢。
【问题讨论】:
-
只是因为日期格式的问题,这真的是Microsoft SQL Server吗?还是 MySQL?
-
Microsoft SQL Server,我手动输入了日期。
-
@Brian - MS SQL Server 的日期格式没有问题
标签: sql sql-server date