`
zhsq_java
  • 浏览: 61852 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

判断一个日期段和其他的日期段有没有重叠

阅读更多
  select case
         when (not exists
               (select 1
                  from (select t.contract_startdate, t.contract_enddate
                          from pcmscontract t
                         where t.contract_code = 'SHXLFMHG-JM-TX-2011-004') t1
                 where (contract_startdate between
                       to_date('20101201', 'yyyymmdd') and
                       to_date('20110113', 'yyyymmdd') or
                       contract_enddate between
                       to_date('20101201', 'yyyymmdd') and
                       to_date('20110113', 'yyyymmdd') or
                       to_date('20101201', 'yyyymmdd') between
                       contract_startdate and contract_enddate or
                       to_date('20110113', 'yyyymmdd') between
                       contract_startdate and contract_enddate))) then
          1
         else
          0
       end
  from dual


貌似弄得有点复杂了,不知道有没有更好的办法。


http://blog.sina.com.cn/s/blog_59a59f220100atyz.html

这个同学所说的第二种方法貌似不对,没有发所有的重叠的情况都找出来。
分享到:
评论

相关推荐

    java 判断两个时间段是否重叠的案例.docx

    "java 判断两个时间段是否重叠的案例" 本文主要介绍了如何在 Java 中判断两个时间段是否重叠的案例。时间段是指具有起始时间和终止时间的时间范围,在实际...该方法可以帮助开发者在实际开发中解决时间段重叠的问题。

    表单校验时间段重叠问题

    有个统计时段的字段,需排除选择的时间范围不能与已有时间段重叠

    java 判断两个时间段是否重叠的案例

    如果两个时间段重叠,那么输出“两个时间段重叠”,否则输出“两个时间段不重叠”。 本文介绍了如何使用 Java 判断两个时间段是否重叠,并提供了相关的代码实现。该方法可以应用于业务逻辑中,用于检查时间段的交叉...

    PHP编程计算两个时间段是否有交集的实现方法(不算边界重叠)

    在PHP编程中,计算两个时间段是否有交集是一个常见的任务,特别是在处理日程安排、时间管理或者事件冲突检测等问题时。本文将深入探讨如何实现这个功能,同时考虑不包含边界重叠的情况。 首先,我们来看一个优化前...

    算法导论中区域重叠判断的的实现

    其中,"区域重叠判断"是一个常见的问题,尤其在处理几何对象、时间规划或资源调度等领域。区域重叠的判断是理解这些场景中对象交互的基础。本节将深入探讨如何使用C语言实现这一功能,并结合动态内存分配来提高代码...

    C# 判断时间段是否相交的实现方法

    这个方法可以生成一个Mongo查询,用于判断某个时间段是否与已知时间段有交集。 C# 判断时间段是否相交的实现方法可以使用 TimeSpan 结构体和 LINQ 表达式来实现。这种方法可以应用于各种需要判断时间段是否相交的...

    重叠区间查找算法实现(C++)

    重叠区间查找算法是一种在计算机科学中用于处理和查找数据集中的重叠时间段的问题。这种算法在各种领域都有应用,例如日程管理、资源调度、生物信息学等。在这个C++实现的课程设计中,我们将深入探讨重叠区间查找...

    Oracle时间区间段合并.pdf

    在提供的SQL语句中,主要使用了`SUM()`窗口函数和`CASE`表达式来判断当前区间段是否与前一个区间段重叠。 1. `CASE`表达式: 该表达式检查当前行的开始时间`BEG_TIM`是否小于或等于前一行的结束时间`END_TIM`的...

    比较时间段一与时间段二是否有交集的php函数

    这里介绍的`isMixTime`函数就是这样一个工具,它用于判断给定的两个时间段是否至少存在一部分重叠。下面我们将详细讨论这个函数的工作原理以及如何在实际项目中使用。 首先,让我们看一下`isMixTime`函数的代码: ...

    java-date.zip_java

    对于判断时间是否有交叉,我们通常会涉及到两个时间段,每个时间段由一个开始时间和一个结束时间定义。 1. **使用`java.util.Date`和`java.util.Calendar`**: - 首先,我们需要两个`Date`对象分别表示两个时间段...

    时间区间取并集Orace存储过程算法实现

    时间区间表示一个时间段,通常用两个时间点表示:起始时间和结束时间。例如,区间 [am, bm] 表示从am时刻开始到bm时刻结束的一个时间段。 #### 2. 并集操作 对于多个时间区间,如果它们之间存在重叠部分,则可以将...

    用于 .NET 的时段库,适用于时间处理场景开发

    1. **时段的创建**:创建一个时间段,例如从某个日期到另一个日期,或者从当前时间开始的一个固定时间段。 2. **时段的比较**:判断两个时段是否重叠,或者一个时段是否包含另一个时段。 3. **时段的运算**:合并...

    PHP 计算两个时间段之间交集的天数示例

    首先,定义一个名为`share_date_days`的函数,它接收四个参数:开始日期1 `$startDate1`,结束日期1 `$endDate1`,开始日期2 `$startDate2` 和结束日期2 `$endDate2`。这些日期通常是以"Y-m-d"格式的字符串。函数...

    缠论dll源码 笔段中枢

    中枢由三个连续的段构成,即一个上涨段后接一个下跌段,再接一个上涨段,或者反过来。中枢的形成表明市场在此区域进行了充分的换手,是观察趋势延续或转折的重要参考。 在这个压缩包文件中,“缠论dll源码”可能是...

    笔试逻辑判断题.pdf

    第三轮至少有一个人看到其他人都没打,知道自己戴的是黑帽子。 5. 电视塔质量估算:这需要了解电视塔的结构、材料密度等信息,一般通过体积计算质量,但具体数据未给出,无法直接估算。 6. 电梯钻石问题:第10楼拿...

    开源项目-senseyeio-spaniel.zip

    `Span`对象可以很容易地与其他`Span`进行交互,例如通过`Intersect`方法检查两个时间跨度是否有重叠,或者使用`Union`方法合并两个时间段。此外,`Before`、`After`和`Contains`等方法允许开发者快速判断时间关系。 ...

    Python库 | datetime-interval-0.1.tar.gz

    例如,假设有一个任务需要找出一系列事件中哪些是同时发生的,那么`datetime-interval`库可能会提供一个`overlaps()`方法,允许用户轻松检查两个事件的时间段是否有重叠。又或者,如果需要计算一段期间内的总工作...

    数据验证开发总结ppt

    对于时间重叠的四种情况,系统会进行相应的判断和处理,确保新任务不会与已存在的任务时间段冲突。例如,通过位运算和日期比较来确定是否存在重复,然后根据重复的日期长度来决定如何处理,这既保证了数据的一致性,...

Global site tag (gtag.js) - Google Analytics