개요
- 기간 중복 체크 문제에서 복잡한 쿼리가 만들어지는 경우가 많다. 보통 중복 가능한 케이스를
or
로 연결한다.
기간의 6가지 케이스
- 시작 ~ 종료 안에 :시작, :종료가 포함되는 경우
- 시작 ~ 종료 안에 :시작이 포함되는 경우
- 시작 ~ 종료 안에 :종료가 포함되는 경우
- 시작 ~ 종료 를 :시작, :종료가 포함하는 경우
- 시작 ~ 종료 앞에 :시작, :종료가 있는 경우
- 시작 ~ 종료 뒤에 :시작, :종료가 있는 경우
- 1~4번 케이스가 중복되는 조건 이다.
4가지 중복 조건을 하나의 조건으로
- 위 4가지 중복 케이스 조건을 하나로 하기 위해서는 시작이 종료보다 작고 종료는 시작보다 큰 경우 하나로 귀결된다.