https://www.hackerrank.com/challenges/sql-projects/problem?isFullScreen=true
SELECT
Start_Date,
MIN(End_Date)
FROM (SELECT Start_Date
FROM Projects
WHERE Start_Date NOT IN (SELECT End_Date FROM Projects)) s,
(SELECT End_Date
FROM Projects
WHERE End_Date NOT IN (SELECT Start_Date FROM Projects)) e
WHERE 1=1
AND Start_Date<End_Date
GROUP BY
Start_Date
ORDER BY
DATEDIFF(MIN(End_Date),Start_Date)
포인트!
1. End_Date 가 연속된 경우 동일한 프로젝트.
End_Date 의 가장 마지막 날과
End_Date 의 첫번째 날의 Start_Date 출력
WHERE 절에서 NOT IN 연산자 사용시 반드시 서브쿼리 사용!