안녕하세요..
다름이 아니라 날짜 비교 때문에 좀 고생하구 있습니다..
우선 칼럼이 두개 있으며, 칼럼은 각각 시작일과 종료일로 구분됩니다.
START_DATE, END_DATE..로 구분되구요.. 둘다 VARCHAR2(8)입니다.
예로..
START_DATE END_DATE
--------------------------------------------
20080710 20080720
20070110 20080220
----------------------------------------------
이렇게 데이터가 들어있구요..
여기서 신규 데이터를 저장을 할려고 하는데.. 저장하기전 날짜 비교를 해서 저장을 합니다.
조건은 새로 저장될 데이터는 기존 데이터에서,.
시작일과 종료일에 중복이 되면 안되구.. 같아도 안되고.. 양쪽 하나라도 겹치면 안되요..
제가 그래서 짠게..
SELECT COUNT(START_DATE) CNT
FROM (
SELECT START_DATE FROM TEST
WHERE 1=1
-- 시작일비교
AND ’20080710’ BETWEEN START_DATE AND END_DATE
UNION ALL
SELECT START_DATE
FROM TEST
WHERE 1=1
-- 종료일비교
AND ’20080730’ BETWEEN START_DATE AND END_DATE
)
쿼리작성은 이렇게 했는데 날짜가 겹치더라도 등록이 되버리게 된 쿼리네요..ㅜㅜ
절대 어느하나라도 겹치거나 중복이 되면 안되거든요..
도와주세요 ㅠㅠ