현재 선택한 날짜가 주황색 기존의 날짜가 초록색입니다. 

 

기간이 한쪽만 겹치는 경우

쿼리로 적자면 좌측은

1번. ( A between C and D ) and ( B between C and D )

우측은

2번. ( A <= D ) and ( C <= B )

이렇게 된다.

기존 날짜의 기간 내부에 완전히 겹치는 경우 (1번 vs 2번)

 

기존 날짜를 감싸는 경우 (1번 vs 2번)

 

 

쿼리 ( A between C and D ) and ( B between C and D ) 은 

기존 날짜를 감싸는 경우

선택한 날짜가 기존 날짜를 완전히 감싸 버리면 겹치는지 검사를 못한다.

따라서 우측 처럼 ( A <= D ) and ( C <= B ) 으로 쿼리를 변경해야 한다.